Skip to content

DevStackJunior/Flashcards

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🗃️ Flashcards Backend (AdonisJS)

A robust, enterprise-grade backend service built with AdonisJS v6 and TypeScript. This project serves as the core API for the Flashcards ecosystem, designed with a focus on high security and cost-efficient cloud architecture on Microsoft Azure.


🛠️ Tech Stack

Category Tools & Frameworks
Back-End AdonisJS
Language TypeScript Node.js
Database MySQL
Validation & Auth VineJS Shield
Testing Japa
Infrastructure Docker Azure

Key Libraries


☁️ Infrastructure & Cloud Strategy

The application is deployed to Microsoft Azure using a modern, secure networking topology.

Private Connectivity via Service Endpoints

To optimize for security and cost, the infrastructure utilizes Azure Private Endpoints:

  • Traffic Isolation: The backend and database communicate over a private Virtual Network (VNet). The API is not exposed to the public internet unless necessary.
  • Cost Optimization: By using Service Endpoints and Private Link, we significantly reduce egress charges and data transfer costs between services.
  • Security-First: This setup prevents lateral movement and ensures that sensitive data (like your MySQL connection) never leaves the private Azure backbone.

🚀 Getting Started (Development Mode)

To set up the project locally for development, follow these procedures:

1. Prerequisites

  • Node.js: v24 or higher
  • MySQL: A local instance or Docker container

2. Installation

# Clone the repository
git clone <your-repo-url>
cd app-flashcards-adonisjs

# Install dependencies
npm install

# Create your local environment file:
cp .env.example .env

# Generate your unique application key:
node ace generate:key

# Ensure your MySQL instance is running, then run the migrations to build your schema:
node ace migration:run

# This project uses Hot Module Replacement (HMR) for an optimized development loop:
npm run dev

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published