https://github.com/davesimoes/programming-languages-graphql-api
A public GraphQL API providing structured data on programming languages, their creators, and related frameworks and tools. Perfect for developers, educators, and anyone exploring modern technology stacks.
https://github.com/davesimoes/programming-languages-graphql-api
Last synced: 11 months ago
JSON representation
A public GraphQL API providing structured data on programming languages, their creators, and related frameworks and tools. Perfect for developers, educators, and anyone exploring modern technology stacks.
- Host: GitHub
- URL: https://github.com/davesimoes/programming-languages-graphql-api
- Owner: DaveSimoes
- License: mit
- Created: 2025-07-26T19:04:11.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-07-29T00:24:19.000Z (11 months ago)
- Last Synced: 2025-07-29T00:25:31.941Z (11 months ago)
- Language: JavaScript
- Homepage:
- Size: 25.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π Programming Languages & Tools GraphQL API
A public GraphQL API providing structured data on programming languages, their creators, and related frameworks and tools. Perfect for developers, educators, and anyone exploring modern technology stacks!
[](https://github.com/DaveSimoes/programming-languages-graphql-api/stargazers)
[](LICENSE)

---
## β¨ Features
- π Query programming languages, creators, release dates, and related frameworks
- π οΈ Add new languages and frameworks (mutations)
- β‘ Interactive GraphQL Playground for queries and mutations
- π Easily extensible and ready for integration with modern projects
---
## π Database
This project uses MongoDB as a NoSQL database to store information about programming languages, their creators, related frameworks, and tools.
The connection to MongoDB is established through the Node.js backend, ensuring structured data and efficient queries via GraphQL.
- Connection setup:
To run the project, you need to have MongoDB installed and running.
Configure the following environment variable with the URI to your database:
```
MONGODB_URI=mongodb://localhost:27017/database-name
```
## π Getting Started
1. **Clone the repository**
```bash
git clone https://github.com/DaveSimoes/programming-languages-graphql-api.git
cd programming-languages-graphql-api
```
2. **Install dependencies**
```bash
npm install
```
3. **Configure environment variables**
- Copy `.env.example` to `.env` and adjust variables if needed.
4. **Start the project**
```bash
npm run dev
```
5. **Access the GraphQL playground**
- Open your browser at `/graphql` after starting the server to explore and test queries.
---
## π Example Query
```graphql
query {
languages {
id
name
creator
year
frameworks {
name
type
}
}
}
```
### Example Mutation
```graphql
mutation {
addLanguage(
name: "TypeScript"
creator: "Anders Hejlsberg"
year: 2012
website: "https://www.typescriptlang.org/"
) {
id
name
}
}
```
---
## π οΈScreenshot of Apollo GraphQL studio - Hands-on application of examples on the Apollo GraphQL server

## π Deploy in One Click
Deploy easily to platforms like [Railway](https://railway.app/), [Render](https://render.com/), or [Vercel](https://vercel.com/) (Node.js supported).
---
## π€ Contributing
Pull requests are welcome! Feel free to open issues, suggest improvements, or add new data to the API.
---
## π License
Distributed under the MIT License.
---
> Built by **David De Paiva**
> [LinkedIn](https://www.linkedin.com/in/dspaivadev/)
> _Passionate about technology and building solutions that connect people and knowledge._
---
If you find this project useful, please consider giving it a β star to support the repository and help others discover it!