Skip to content

pmalirz/atlas

Repository files navigation

Atlas

Atlas

Build dynamic, data-driven business applications—without the complexity.

CI Status Node.js TypeScript React NestJS License


✨ What is Atlas?

Atlas is a modern low-code platform for building rich, data-driven business applications. Define your entity model dynamically, extend it with custom logic through a pluggable architecture, and deploy production-ready solutions in record time.

🚀 Customize it to your needs. Deploy ready-to-use seeds. Extend and evolve.


🎯 Key Features

Feature Description
Dynamic Data Model Generic Entity-Relation model allows runtime schema extension without migrations
Schema-Driven UI UI layouts, forms, and views adapt automatically based on backend JSON configuration
Relation Visualization Interactive, force-directed graph views for exploring complex entity relationships
Audit & Compliance Built-in audit logging for all data changes, supporting DORA and compliance requirements
Ready-to-Use Seeds Bootstrap your project with pre-built templates (e.g., EAP - Enterprise Application Portfolio)
Full-Stack TypeScript End-to-end type safety with shared contracts between frontend and backend
Pluggable Auth Native and extensible authentication supporting multiple providers
Email Integration Pluggable email system for verification and password resets (Nodemailer, SMTP)

🏗️ Architecture

app-atlas/
├── atlas-server/    # NestJS backend with Prisma ORM
├── atlas-ui/        # React frontend with schema-driven engine
├── atlas-shared/    # Shared types and contracts (Single Source of Truth)
├── atlas-e2e/       # End-to-end tests (API + UI)
└── docs/            # Detailed documentation

🚀 Quick Start

# Clone the repository
git clone https://github.com/pmalirz/app-atlas.git
cd app-atlas

# Install dependencies
npm install

# Start the database
docker compose up -d

# Build shared library (required by both server and ui)
npm run build -w atlas-shared

# Run database migrations & seed data
# Note: db:seed requires the shared library to be built
npm run db:generate -w atlas-server
npm run db:migrate:deploy -w atlas-server
npm run db:seed -w atlas-server -- --seed eap

# Start the development servers
npm run dev:server &
npm run dev:ui

🗎 Documentation

Detailed documentation is available in the docs/ directory:


🌱 Seeds

Atlas ships with ready-to-deploy seeds — pre-configured data models that you can use as starting points:

Seed Description
eap Enterprise Application Portfolio — manage applications, technologies, and integrations

💡 Seeds are fully customizable. Use them as-is or modify to fit your domain.


🧪 Testing

# Run API e2e tests locally (requires database)
npm run test:api -w atlas-e2e

# Run UI e2e tests locally
npm run test:ui -w atlas-e2e

# Run E2E tests in Docker (API + UI validation)
npm run test:e2e

The atlas-e2e module contains all end-to-end tests:

  • API Tests — Jest + Supertest tests for entities, relations, and definitions (schemas)
  • UI Tests — Playwright smoke tests for navigation, forms, and data persistence

🤝 Contributing

Contributions are welcome! Please see our contributing guidelines for more details.


📄 License

This project is licensed under the MIT License.


Built with ❤️ for developers who want to move fast without sacrificing quality.

About

Developer-centric, low-code platform for building rich, data-driven business applications

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors