Before running the project, ensure you have the following installed:
app.sql
.htdocs
folder of XAMPP. Ensure that XAMPP is running and Docker is up and running.CodeGenerator
folder and run pip install -r requirements.txt
and then run ./codegenerator_script.sh
**.dotnet run
.Ctrl+C
../codegenerator_script.sh
.localhost
and the port number in the URL as needed, e.g., https://localhost:5001/v1/api/
).ReactTsOutput1
..env
file.npm run dev
, and it will open the newly designed app directly.Use the following Docker commands to set up Redis, RabbitMQ, and MinIO (S3):
MinIO
docker run -d --name minio -p 9000:9000 --env-file .env \
-e MINIO_ROOT_USER=${MINIO_ROOT_USER} \
-e MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} \
-v minio-data:/data minio/minio:latest server /data
Redis
docker run -d --name redis -p 6379:6379 --env-file .env \
-v redis-data:/data redis:latest \
redis-server --requirepass "$(grep REDIS_PASSWORD .env | cut -d '=' -f2)" --appendonly yes
RabbitMQ
docker run -d --name rabbitmq -p 5672:5672 -p 15672:15672 --env-file .env \
-v rabbitmq-data:/var/lib/rabbitmq rabbitmq:management
Add the following configurations to appsettings.json
for MinIO (S3), Redis, and RabbitMQ:
{
"MinIO": {
"AccessKey": "${MINIO_ROOT_USER}",
"SecretKey": "${MINIO_ROOT_PASSWORD}",
"Endpoint": "http://localhost:9000"
},
"Redis": {
"Connection": "localhost:6379,password=${REDIS_PASSWORD}"
},
"RabbitMQ": {
"Connection": "amqp://${RABBITMQ_USER}:${RABBITMQ_PASSWORD}@localhost:5672/"
}
}
Ensure your database schema follows the guidelines provided by NeoApps.AI. You can find the guidelines here.
Save your database script in .sql
format. Example scripts are available on the guidelines page.
Upload your script to XAMPP by placing it in the htdocs
directory. This will allow it to be accessible via the XAMPP server.
Set up your MySQL database with the following parameters:
root
(or your configured username)3306
Update launchSettings.json
with the following parameters for backend generation:
"PARAMETER": "{project_id:1,server:localhost,uid:1,username:root,password:,databaseName:splitthebill,script:http://localhost/split_app_script.sql,statusOfGeneration:null,projectName:ContentPlannerTest,DBexists:No,port:3306,rabbitMQConn:amqp://user12345:12345@localhost:5672/,redisConn:localhost:6379,password=12345,apiflowurl:,fronttemplateurl:,Technology_Frontend:,Backend_technology:dotnet,buttonClicked:generate,projectType:,swgurl:,noderedurl:null}"
Update launchSettings.json
with the following parameters for frontend generation:
"PARAMETER": "{project_id:1,server:localhost,uid:1,username:root,password:,databaseName:splitthebill,script:http://localhost/split_app_script.sql,statusOfGeneration:,projectName:ContentPlannerTest,DBexists:Yes,port:3306,rabbitMQConn:amqp://user12345:12345@localhost:5672/,redisConn:localhost:6379,password=12345,apiflowurl:,fronttemplateurl:,Technology_Frontend:reactts,Backend_technology:,buttonClicked:generate,projectType:dnd,swgurl:,noderedurl:}"
Below is a list of configuration parameters used in the project setup, along with their explanations:
project_id
1
server
localhost
uid
1
username
root
password
""
(empty string)databaseName
splitthebill
script
htdocs
directory.http://localhost/split_app_script.sql
statusOfGeneration
""
(empty string, to be updated during the process)projectName
ContentPlannerTest
DBexists
NO
, and it will recreate the database tables. For frontend generation, it will be YES
."Yes"
port
3306
rabbitMQConn
https://localhost:5001/v1/api/
redisConn
localhost:6379
password
(for Redis)12345
apiflowurl
""
(empty, to be defined based on your setup)fronttemplateurl
""
(empty, to be defined based on your setup)Technology_Frontend
reactts
(React with TypeScript)Backend_technology
""
(empty, to be specified based on your project)buttonClicked
"generate"
projectType
"dnd"
swgurl
""
(empty, to be filled after project setup). No need to change anything here for now.noderedurl
""
(empty, to be filled based on setup)Once you generate the project, the generated code will be available in the bin/debug
folder.
Copy the generated code folder and place it into your repository or preferred directory.
Open the project in Visual Studio or Visual Studio Code and run it. If you encounter any errors, check your database schema for issues.
Generate the frontend code and ensure both the frontend and backend projects are configured correctly. Copy them into your repository or preferred directory.
If you need to regenerate the project or make changes to the database schema, drop the existing database tables and rerun the project.
After copying the projects, run the .NET API as needed.
Follow these steps, and you should be able to run the project and generate the apps without any issues.
Setup and Installation Guide For a detailed guide on setting up the project, generating the API, and hosting it locally, please refer to the Setup and Installation Guide.
This guide includes step-by-step instructions and a video tutorial to help you through the entire process.
To help you get started and make the most of NeoApps.ai, we have prepared comprehensive documentation: