Skip to content

Aletheia-Data/api.aletheiadata.org

Repository files navigation

Gitpod

Gitpod ready-to-code

API Aletheia Data

Aletheia is an Open Source project that seeks to encourage both public and private entities to facilitate access to public information, so that it can have a more relevant social impact.

As developers we have seen the need to make use of public information (information in the public domain that should be available and accessible by law), but in the search we quickly realized that although the information is (in part) available, it is not organized in a way that is easy to use (uses that can range from the simple consultation of the data, to statistical use or to create computer smart products oriented to citizens.

Another problem that we frequently find is the lack of a standard in the format of these files. As well as the use of formats that DO NOT allow the extraction of the information. We know that, like us, there are other Citizens who need to access this data and this is why we decided to develop an Open API to facilitate access and distribution of resourceful public information.

The objective is to create an ecosystem where these files are ALWAYS available, accessible 24 hours a day and accompanied by APIs to facilitate the consumption and exchange of this information while providing an immutable and reliable "single source of truth".

Table of Contents

🏄 Get Started

The app is a Express api built with Node.

Web3 Technologies

  • IPFS
  • Fleek.co

To start local development:

git clone [email protected]:Aletheia-Data/api.aletheiadata.org.git

# when using nvm to manage Node.js versions
nvm use

npm install

Finally, set environment variables to use this local connection in .env in the app:

# modify env variables
cp .env.dist .env

npm start

This will start the development server under http://localhost:8000.

✨ Code Style

Code style is automatically enforced through ESLint & Prettier rules:

  • Git pre-commit hook runs prettier on staged files, setup with Husky
  • VS Code suggested extensions and settings for auto-formatting on file save
  • CI runs a linting & TypeScript typings check as part of npm test, and fails if errors are found

For running linting and auto-formatting manually, you can use from the root of the project:

# linting check
npm run lint

# auto format all files in the project with prettier, taking all configs into account
npm run format

💖 Contributing

We welcome contributions in form of bug reports, feature requests, code changes, or documentation improvements.

Please make sure to follow our guidelines:

For important changes please create first an (issue)[https://github.com/Aletheia-Data/api.aletheiadata.org/issues/new] to discuss what you would like to change.

Plase make sure that for each PR the necessary test are done.