Skip to main content

Installation & Requirements

InstaCRUD runs as a Python-based multi-tenant backend application with optional React UI and MongoDB persistence.

This guide walks you through setting up the backend, running MongoDB, and starting the service.


Requirements

Before installing InstaCRUD, ensure you have:

  • Python with Poetry
  • Node.js with npm
  • Docker or Docker Desktop
  • MongoDB (running on mongodb://test:test@localhost:27017/)

Clone Project

git clone https://github.com/esng-one/instacrud-proto.git
cd instacrud-proto

From project root:

docker-compose up -d mongo

Default connection address:

mongodb://test:test@localhost:27017/

Backend Setup

1️⃣ Enter backend folder:

cd backend

2️⃣ Install dependencies:

poetry install

3️⃣ Initialize the database:

Option A: Generate mock data

poetry run python -m init.init_mock_db

Once complete, log in with: east_admin@test.org / eastpass

Option B: Initialize AI models (tiers and model definitions):

poetry run python ./init/init_ai_models.py

Option C: Empty bootstrap (only root admin):

poetry run python ./init/init.py

4️⃣ Run backend server:

poetry run python instacrud/app.py

Service will now run on:

http://localhost:8000/

Running Tests

Run tests on mock environment:

poetry run pytest test/lifecycle_test.py

Run tests on a real server (server must be running):

poetry run pytest test/lifecycle_test.py --type=live

Frontend Setup

1️⃣ Go to the frontend folder:

cd frontend

2️⃣ Install dependencies:

npm install

3️⃣ Start the frontend:

npm run dev

4️⃣ (Optional) Generate API client from OpenAPI (backend must be running):

npm run generate-api

Admin panel will be available locally.


Bruno API Testing

A Bruno API testing project is available in the bruno folder.


Run with Docker

From the instacrud root folder, run the entire app:

docker-compose up -d

Summary

You have now:

  • MongoDB running
  • Backend dependencies installed
  • Database initialized
  • Backend server active
  • Frontend operational
  • (Optional) Bruno project for API testing

Your InstaCRUD instance is ready.