Manage the paniAbi bakery product catalogue.
Translation pending
CommerceJavaScript · TypeScriptGitHub @paniAbiOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Management platform for paniAbi bakery
Translation pending
Loading the full README.
Read the full README ↗A product and operations workspace for the paniAbi bakery team.
Next.js App Router, TypeScript, React, Tailwind CSS, shadcn/ui, Prisma, PostgreSQL (Neon online, Docker on your computer), Zod, React Hook Form, Vitest, ESLint and Prettier.
You need five programs. After installing each one, run its check command in a new terminal; it must print a version (or "Logged in") without errors.
| Tool | Windows | macOS | Check |
|---|---|---|---|
| Git | winget install --id Git.Git -e | xcode-select --install | git --version |
| nvm (Node versions) | winget install --id CoreyButler.NVMforWindows -e | nvm install script | nvm --version |
| Node 22 (through nvm) | nvm install 22 then nvm use 22 | nvm install then nvm use (reads .nvmrc) | node -v → v22.x |
| GitHub CLI | winget install --id GitHub.cli -e | brew install gh | gh auth status |
| Docker Desktop | winget install --id Docker.DockerDesktop -e | brew install --cask docker | docker info |
Then sign in to GitHub once with gh auth login (choose GitHub.com, HTTPS,
and "Login with a web browser").
Open Docker Desktop once after installing it and accept its terms. It must be running whenever you work on the app, because your local database lives in it.
Close and reopen the terminal after installing, so it finds the new programs.
Clone the repository and enter its folder:
git clone https://github.com/paniAbi/paniAbi-platform.git
cd paniAbi-platform
Install the exact dependency versions from package-lock.json:
npm ci
Create your .env file from the example:
cp .env.example .env
It already points at your local database: you do not need any URL from Juan.
With Docker Desktop open, create your local database with the tables and sample products:
npm run db:local
Run it again whenever the database is stopped (for example after restarting the computer). It never erases data.
Start the app and open http://localhost:3000/products:
npm run dev
Stop it with Ctrl+C.
Until October 2026 everyone's .env pointed at the live site's database.
If you set up the app before then, move to your own local database once:
Install Docker Desktop if you do not have it (section 1), open it, and wait until it says Engine running.
Get the latest version of the project:
git switch main
npm run git:sync
Replace your .env with the example. Run this yourself (your coding
agent will not edit .env). It removes the old live-site URLs; you do
not need them anymore.
cp .env.example .env
Create your local database with the tables and sample products:
npm run db:local
Start the app and open http://localhost:3000/products:
npm run dev
You see the sample products. From now on, nothing you create on your computer reaches the live site.
| What you want to do | Command |
|---|---|
| Start a ticket (creates your branch) | npm run ticket:start -- 42 product list page |
Bring the latest main into your branch | npm run git:sync |
| Start the local database | npm run db:local |
| Run the app | npm run dev |
| Run every check CI runs (do it before a PR) | npm run check |
| See your change working (with your agent) | Tell it "Quiero verlo funcionando" (try-it-out) |
| Push your branch and open the pull request | npm run git:pr |
The full flow (plan, approval, review) is in CONTRIBUTING.md.
Each database has one job:
| Database | Used by |
|---|---|
| Local (Docker) | Everyone's computer (npm run db:local). |
Neon production | The live site. |
Neon dev | Pull request previews. |
Neon ci | GitHub Actions. |
When you run the app on your computer you use your own local database:
prisma/schema.prisma, prisma/migrations/ or prisma/seed.ts, and do
not run npm run db:migrate, npm run db:seed or any prisma migrate /
prisma db push command. npm run db:local is the one database command
for everyone. If your feature needs a new field or table, stop and ask
Juan; he adds it first in his own pull request.This is the beginning of the README. Read the rest at the original. Read the full README ↗