Skip to content

Igorjr19/multilanguage-api

Repository files navigation

Multilanguage API Project

This project aims to implement the exact same Task Manager API across multiple programming languages and frameworks. The goal is to compare syntax, project structure, performance, and developer experience (DX) between different backend technologies.

🎯 Project Goal

Create a simple but complete REST API with:

  • Authentication: JWT & Password Hashing.
  • CRUD: Create, Read, Update, Delete operations for Tasks.
  • Database: PostgreSQL (shared across all implementations).
  • Docker: Containerized database for easy setup.

📚 Documentation

  • API Specifications: Detailed documentation of all endpoints, request/response formats, and status codes.
  • Database Schema: Entity Relationship Diagram (User & Task).

🛠️ Infrastructure

The project uses a shared PostgreSQL database running in Docker.

Prerequisites

  • Docker & Docker Compose

Getting Started

  1. Start the database:

    docker compose up -d

    This will start a PostgreSQL instance on port 5432 (User: admin, Pass: password, DB: taskmanager_db).

  2. Navigate to a specific language folder (e.g., nest/, go/, python/) and follow its specific README.md (to be created) for running the application.

🚀 Implementations Roadmap

Language Framework Status
TypeScript NestJS 🚧 Pending
Go Standard Lib / Chi 🚧 Pending
Python FastAPI 🚧 Pending
PHP Laravel 🚧 Pending
Java Spring Boot 🚧 Pending
Ruby Rails 🚧 Pending
C# .NET 🚧 Pending
Rust Axum 🚧 Pending
Zig Zap 🚧 Pending

📝 Features Checklist

For every implementation, the following features must be present:

  • Database Migration/Sync.
  • User Registration (hashing password).
  • User Login (returning JWT).
  • Middleware to protect /tasks routes.
  • Create Task (linked to user).
  • List Tasks (filtered by user).
  • Get Task Details.
  • Update Task.
  • Delete Task.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors