A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

Open Charge Map

The global public registry of electric vehicle charging locations.
https://github.com/openchargemap/ocm-system

Category: Consumption
Sub Category: Mobility and Transportation

Keywords from Contributors

electric-vehicles transforms archiving measur conversion observation animals compose generic projection

Last synced: about 19 hours ago
JSON representation

Repository metadata

Open Charge Map is the global public registry of electric vehicle charging locations. Established 2011. Help wanted.

README.md

Open Charge Map (OCM)

About the project

Open Charge Map is the global public registry of electric vehicle charging locations.
OCM was first established in 2011 and aims to crowdsource a high quality, well maintained open data set with the greatest breadth possible. Our data set is a mixture of manually entered information and imported open data sources (such as government-run registries and charging networks with an open data license). OCM provides data to drivers (via hundreds of apps and sites), as well to researchers, EV market analysts, and government policy makers.

The code in this repository represents the backend systems (API, Web Site and server-side import processing) for the project. Server-side code is developed mostly in C#, currently building under Visual Studio 2022 Community Edition (or higher) with .Net 6, Data is primarily stored in SQL Server, using Entity Framework Core, with an additional caching layer using MongoDB. Most API reads are services by the MongoDB cache.

Developers can use our API to access the data set and build their own apps. The map app source (using latest Ionic/Angular/TypeScript) can be found in its own repo at https://github.com/openchargemap/ocm-app

Basic build/dev prerequisites

  • dotnet 6.x sdk (windows/linux)
  • SQL Server Express
  • MongoDB 5.x

Local Dev Setup

  • Restore SQL database clone https://github.com/openchargemap/ocm-docs/tree/master/Database/Clone
  • Run OCM.Web (main website) project and create a user acccount, in User table set Permissions field for your account to administrator: {"Permissions":[{"Level":100},{"Level":1000}],"LegacyPermissions":"[CountryLevel_Editor=All];[Administrator=true];"}
  • Once you have the Admin menu in the web ui, Admin > Dashboard > Check POI Cache Status > Refresh Cache (All) to rebuild local MongoDB cache. Peridocially run Refresh Cache (Modified) to ensure cache does not become stale (otherwise the SQL database will be used for queries).

Deployment

  • Configure MongoDB as services and initialise ocm_mirror database
  • Enable read/write for app pool user for \Temp folders
  • Configure web.config

To run an API mirror, see the OCM.API.Worker readme.

Contributing

Please contribute in any way you can:

  • Improve the data (anyone can do this):
    • Submit comments, checkins, and photos via the website
    • Submit new data, become an editor for your country
  • Grow the user base
  • Improve the system:
    • Help translate the app into other languages see https://github.com/openchargemap/ocm-app/issues/35
    • Help write documentation
    • Web App (HTML/CSS/JavaScript)
    • Website development (MVC)
    • Map widget for embedding
    • Sample Code for developers
    • Graphic Design
    • Testing

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 5 days ago

Total Commits: 974
Total Committers: 12
Avg Commits per committer: 81.167
Development Distribution Score (DDS): 0.048

Commits in past year: 17
Committers in past year: 1
Avg Commits per committer in past year: 17.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
webprofusion-chrisc c****k@w****m 927
zymurgic s****n@z****g 8
eho e****t@g****m 7
Christopher Cook (Phobos) c****r@p****u 7
johan12345 j****r@g****m 6
solarpete p****k@g****m 4
dependabot[bot] 4****] 4
cybersol795 4****5 4
Remus Lazar rl@c****u 3
PuneetJain j****6@g****m 2
mrw298 m****s@g****m 1
iboboc i****c@g****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 170
Total pull requests: 61
Average time to close issues: about 2 years
Average time to close pull requests: 7 months
Total issue authors: 54
Total pull request authors: 12
Average comments per issue: 2.39
Average comments per pull request: 1.66
Merged pull request: 28
Bot issues: 0
Bot pull requests: 29

Past year issues: 3
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 3
Past year pull request authors: 0
Past year average comments per issue: 4.0
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/openchargemap/ocm-system

Top Issue Authors

  • solarpete (41)
  • webprofusion-chrisc (37)
  • zymurgic (20)
  • Leftaf (7)
  • tdilo (5)
  • gaddman (4)
  • stanvass (3)
  • jumpjack (2)
  • openui54u (2)
  • remuslazar (2)
  • baryluk (2)
  • Felger (2)
  • hchalkley (2)
  • poliantoIT (1)
  • FbPalmabit (1)

Top Pull Request Authors

  • dependabot[bot] (29)
  • zymurgic (9)
  • solarpete (7)
  • ardevd (4)
  • remuslazar (3)
  • johan12345 (2)
  • webprofusion-chrisc (2)
  • BarnacleJones (1)
  • iboboc (1)
  • jainpuneet86 (1)
  • cybersol795 (1)
  • mrw298 (1)

Top Issue Labels

  • enhancement (72)
  • OCM Website (43)
  • translation (32)
  • help wanted (29)
  • OCM App (23)
  • OCM API (13)
  • bug (12)
  • OCM Data Imports (5)
  • Discussion (3)
  • question (2)
  • OCM Map Widget (1)

Top Pull Request Labels

  • dependencies (29)
  • .NET (3)
  • javascript (2)

Dependencies

App/package-lock.json npm
  • 240 dependencies
App/package.json npm
  • http-server ^0.8.0 development
  • jake 8.0.15 development
  • typedoc ^0.3.4 development
  • typescript ^2.3.0 development
  • uglify-js * development
  • wrench * development
  • moment *
  • node-sass ^4.12.0
API/OCM.Net/OCM.API.Client/OCM.API.Client.csproj nuget
  • Microsoft.Extensions.Logging.Abstractions 6.0.1
  • Newtonsoft.Json 13.0.1
API/OCM.Net/OCM.API.Core/OCM.API.Core.csproj nuget
  • Microsoft.EntityFrameworkCore.Tools 6.0.7 development
  • AWSSDK.S3 3.7.9.32
  • CompareNETObjects 4.77.0
  • GeoCoordinate.NetStandard1 1.0.1
  • Microsoft.EntityFrameworkCore.Proxies 6.0.7
  • Microsoft.EntityFrameworkCore.SqlServer 6.0.7
  • Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite 6.0.7
  • Microsoft.Extensions.Configuration.Json 6.0.0
  • Microsoft.Extensions.Logging.Console 6.0.0
  • MongoDB.Driver 2.17.0
  • SixLabors.ImageSharp 2.1.3
  • System.Configuration.ConfigurationManager 6.0.0
API/OCM.Net/OCM.API.Model/OCM.API.Common.Model.csproj nuget
  • Newtonsoft.Json 13.0.1
  • System.ComponentModel.Annotations 5.0.0
API/OCM.Net/OCM.API.Worker/OCM.API.Worker.csproj nuget
  • Microsoft.Extensions.Hosting.Systemd 6.0.0
  • Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.16.1
Import/OCM.Import.Analysis/OCM.Import.Analysis.csproj nuget
  • DotSpatial.Data 3.0.1
  • DotSpatial.Projections 3.0.1
  • NetTopologySuite 2.5.0
  • System.Text.Encoding.CodePages 6.0.0
.github/workflows/dotnetcore.yml actions
  • actions/checkout v1 composite
  • actions/setup-dotnet v1 composite
API/OCM.Net/OCM.API.Worker/Dockerfile docker
  • base latest build
  • build latest build
  • mcr.microsoft.com/dotnet/aspnet 6.0 build
  • mcr.microsoft.com/dotnet/sdk 6.0 build
Import/OCM.Import.Worker/Dockerfile docker
  • base latest build
  • build latest build
  • mcr.microsoft.com/dotnet/aspnet 6.0 build
  • mcr.microsoft.com/dotnet/sdk 6.0 build
Localisation/package-lock.json npm
  • abbrev 1.1.1 development
  • amdefine 1.0.1 development
  • argparse 0.1.16 development
  • async 0.1.22 development
  • async 0.2.10 development
  • camelcase 1.2.1 development
  • cli 0.4.5 development
  • coffee-script 1.3.3 development
  • colors 0.6.2 development
  • console-browserify 0.1.6 development
  • dateformat 1.0.2-1.2.3 development
  • decamelize 1.2.0 development
  • esprima 1.0.4 development
  • eventemitter2 0.4.14 development
  • exit 0.1.2 development
  • findup-sync 0.1.3 development
  • getobject 0.1.0 development
  • glob 3.2.11 development
  • glob 3.1.21 development
  • graceful-fs 1.2.3 development
  • grunt 0.4.5 development
  • grunt-contrib-clean 0.5.0 development
  • grunt-contrib-concat 0.3.0 development
  • grunt-contrib-copy 0.4.1 development
  • grunt-contrib-jshint 0.6.5 development
  • grunt-contrib-uglify 0.2.7 development
  • grunt-legacy-log 0.1.3 development
  • grunt-legacy-log-utils 0.1.1 development
  • grunt-legacy-util 0.2.0 development
  • grunt-lib-contrib 0.6.1 development
  • hooker 0.2.3 development
  • iconv-lite 0.2.11 development
  • inherits 1.0.2 development
  • inherits 2.0.3 development
  • js-yaml 2.0.5 development
  • jshint 2.1.11 development
  • lodash 2.4.2 development
  • lodash 0.9.2 development
  • lru-cache 2.7.3 development
  • minimatch 0.3.0 development
  • minimatch 0.2.14 development
  • nopt 1.0.10 development
  • rimraf 2.2.8 development
  • shelljs 0.1.4 development
  • sigmund 1.0.1 development
  • source-map 0.1.34 development
  • uglify-js 2.4.24 development
  • uglify-to-browserify 1.0.2 development
  • underscore 1.4.4 development
  • underscore 1.7.0 development
  • underscore.string 2.4.0 development
  • underscore.string 2.3.3 development
  • underscore.string 2.2.1 development
  • which 1.0.9 development
  • window-size 0.1.0 development
  • wordwrap 0.0.2 development
  • yargs 3.5.4 development
  • zlib-browserify 0.0.1 development
Localisation/package.json npm
  • grunt ~0.4.1 development
  • grunt-contrib-clean ~0.5.0 development
  • grunt-contrib-concat ~0.3.0 development
  • grunt-contrib-copy ~0.4.1 development
  • grunt-contrib-jshint ~0.6.0 development
  • grunt-contrib-uglify ~0.2.2 development
Import/OCM.Import.Common/OCM.Import.Common.csproj nuget
  • CompareNETObjects 4.77.0
  • DocumentFormat.OpenXml 2.17.1
  • DotNetProjects.IndexedLinq 2.0.18
  • GeoCoordinate.NetStandard1 1.0.1
  • Microsoft.Extensions.Logging.Console 6.0.0
  • Microsoft.Net.Http 2.2.29
  • Newtonsoft.Json 13.0.1
  • System.Configuration.ConfigurationManager 6.0.0
Import/OCM.Import.Manager.Console/OCM.Import.Manager.Console.csproj nuget
  • Microsoft.EntityFrameworkCore.Tools 6.0.8 development
Import/OCM.Import.Manager.UI/OCM.Import.Manager.UI.csproj nuget
  • Azure.Identity 1.6.1
  • Azure.Security.KeyVault.Secrets 4.3.0
  • Microsoft.Extensions.Configuration.FileExtensions 6.0.0
  • Microsoft.Extensions.Configuration.Json 6.0.0
  • Microsoft.Extensions.Logging.Console 6.0.0
  • Microsoft.Windows.Compatibility 6.0.0
Import/OCM.Import.Worker/OCM.Import.Worker.csproj nuget
  • Azure.Extensions.AspNetCore.Configuration.Secrets 1.2.2
  • Azure.Identity 1.6.1
  • Microsoft.Extensions.Hosting 6.0.1
  • Microsoft.Extensions.Hosting.Systemd 6.0.0
  • Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.17.0
Tests/OCM.API.Tests/OCM.API.Tests.csproj nuget
  • coverlet.collector 3.1.2 development
  • xunit.runner.visualstudio 2.4.5 development
  • Microsoft.AspNetCore.Mvc.Testing 6.0.8
  • Microsoft.Extensions.Configuration.FileExtensions 6.0.0
  • Microsoft.Extensions.Configuration.Json 6.0.0
  • Microsoft.Extensions.Configuration.UserSecrets 6.0.1
  • Microsoft.NET.Test.Sdk 17.3.0
  • coverlet.msbuild 3.1.2
  • xunit 2.4.2
Website/OCM.Web/OCM.Web.csproj nuget
  • Microsoft.TypeScript.MSBuild 4.7.4 development
  • Microsoft.VisualStudio.SlowCheetah 4.0.8 development
  • Ben.BlockingDetector 0.0.4
  • Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation 6.0.8
  • Microsoft.Extensions.Caching.SqlServer 6.0.8
API/OCM.Net/OCM.API.Worker/cloudflare/api-router/package-lock.json npm
  • 210 dependencies
API/OCM.Net/OCM.API.Worker/cloudflare/api-router/package.json npm
  • @cloudflare/workers-types ^4.20230215.0 development
  • typescript ^4.9.5 development
  • vitest ^0.28.5 development
  • wrangler 2.10.0 development
API/OCM.Net/OCM.API.Web/OCM.API.Web.csproj nuget
App/App.csproj nuget

Score: 7.553810852008231