FlexForm is a WebApplication built using VueJs to create dynamic forms according to your needs in no time.
This Enables you to create large forms without the hustle to make different database tables for each form you make alongwith the difficulty to manage any changes it encounters to a simple precedure to get the desired Form keeping all the information just to you.
The frontend of FlexForm is build using Vue.js to create a single page web application.
This was acheived by building the frontend on top of a template and additional pages were added according to the design flow.
Clone the project into your directory by using command
git clone https://github.com/Hafif-Ashiq/FlexForm.git
cd Frontend
Then run the basic setup below to start the project frontend on the local device
# install dependencies
npm install
# To change node version using nvm
nvm use 16
# serve with hot reload at localhost:8080
npm run serve
# build for production with minification
npm run build
# build for production and view the bundle analyzer report
npm run build --report
The backend of FlexForm is build using Django REST framework to create Dynamic tables/models in it using PostgreSQL as default settings. Other databases can be configured by extra changes to the settings / python code to work properly
First clone the project if not done before by using:
git clone https://github.com/Hafif-Ashiq/FlexForm.git
Then switch to the backend directory using
cd Backend
Next step is to install the dependencies using:
pip install -r requirements.txt
Once pip
has finished downloading the dependencies
In order to run the application successfully, you'll have to change the database settings in settings.py
according to your database connection for PostgreSQL connection
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': '<Database name here>'',
'USER': '<database username here>'',
'PASSWORD': '<database password here>',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
To create a localhost connection port for the application to listen at
http://127.0.0.1:8000/
run
cd flexform
python manage.py runserver
To make migrations to database, run:
python manage.py makemigrations
python manage.py migrate
The user can request different APIs using different URLs ass following:
http://localhost:8000/doc
http://localhost:8000/redoc
http://localhost:8000/api-token-auth/
http://localhost:8000/register/
http://localhost:8000/login/
http://localhost:8000/get-all-users
http://localhost:8000/get-user
http://localhost:8000/form-api
http://localhost:8000/get-form/<id>
http://localhost:8000/publish-form
http://localhost:8000/get-response/<id>
http://localhost:8000/post-response/<id>
http://localhost:8000/delete-response
http://localhost:8000/approve-response