EasyToBuild is a powerful web application built using Spring Boot MVC, Thymeleaf, Hibernate, and MySQL. It provides a seamless experience for users to easily create and deploy customized business websites.
EasyToBuild simplifies the process of building and deploying business websites by offering a user-friendly interface and automated deployment pipelines. With EasyToBuild, users can quickly create business websites tailored to their specific needs without extensive coding or technical knowledge.
Key Features:
- User Registration: Users can register an account and securely log in to the EasyToBuild platform.
- Business Type Selection: Users can choose from a variety of business types, such as CRM, e-commerce, or simple landing pages.
- Database Configuration: EasyToBuild allows users to provide database connection details for seamless integration with their preferred database system.
- Automated Deployment: The Jenkins pipeline automates the deployment process, ensuring that the website is built, configured, and deployed to the specified server effortlessly.
- Customization: EasyToBuild offers customization options, allowing users to tailor the website's appearance, content, and functionality to meet their specific requirements.
- User-Friendly Interface: The intuitive user interface of EasyToBuild makes it accessible to users of all skill levels, eliminating the need for extensive technical expertise.
List all the prerequisites required to install and run the project. For example:
- Java 17
- MySQL
- Tomcat 10.1
- Jenkins (for automated deployment)
- Optional: Google Client ID and Secret (for additional authentication features)
-
Clone the repository:
git clone <repository-url>
-
Configure the MySQL database by updating the
application.properties
file with the appropriate database connection credentials. -
Replace all placeholder credentials in
application.properties
andREADME.md
: Ensure that you replace the placeholder credentials with your actual database credentials, Jenkins username, token, and host information. Failure to do so may result in connection issues and deployment failures. -
Set up the necessary Google API credentials for Google integration:
- Go to the Google Cloud Console.
- Create a new project or select an existing project.
- Enable the necessary APIs for your project (e.g., Google Drive, Gmail, Calendar).
- In the project dashboard, navigate to the Credentials section.
- Click on Create Credentials and select OAuth client ID.
- Configure the OAuth consent screen with the required information.
- Choose the application type as Web application.
- Add the authorized redirect URIs in the Authorized redirect URIs section. For example:
http://localhost:8080/login/oauth2/code/google
http://localhost:8080/employee/settings/handle-granted-access
Replacelocalhost:8080
with the base URL of your CRM application.
- Complete the setup and note down the Client ID and Client Secret.
-
Modify the Google API scopes for accessing Google services:
While setting up the Google API credentials, you need to add the required scopes to define the level of access the application has to your Google account. The required scopes depend on the specific features you want to use. Here are the scopes for common Google services:
-
Google Drive:
https://www.googleapis.com/auth/drive
-
Gmail:
https://www.googleapis.com/auth/gmail.readonly
-
Google Calendar:
https://www.googleapis.com/auth/calendar
During the setup of your Google credentials, find the section to add the API scopes and include the scopes relevant to the features you intend to use.
-
-
Build the project using Maven or your preferred build tool:
mvn clean install
-
Deploy the project on Tomcat by copying the generated WAR file to the Tomcat webapps directory.
-
Start Tomcat and make sure it is running on
localhost:8080
.
Ensure to update the following properties in application.properties
with your actual database and Jenkins credentials:
spring.datasource.url=jdbc:mysql://localhost:3306/easy_to_build?createDatabaseIfNotExist=true
spring.datasource.username=yourusername
spring.datasource.password=yourpassword
spring.jpa.hibernate.ddl-auto=none
spring.sql.init.mode=always
# Jenkins configurations
jenkins.username=yourusername
jenkins.token=yourtoken
jenkins.host=http://localhost:9090/
- Open a web browser and access
localhost:8080
. - Register a new account by providing your email and other required information.
- Log in using your credentials.
- You will be redirected to choose your business type from the available categories (CRM, E-commerce, Simple Landing Page).
- Provide the necessary information for database connection credentials and the Tomcat webapp location.
- Select the CRM category, and the CRM application will be installed automatically.
- Access the CRM application using
localhost:8080/your-business-name
, whereyour-business-name
refers to the information you registered earlier as your business name.
Feel free to customize and expand upon the sections mentioned above to best fit your project's needs. Including clear instructions and explanations will help users understand and use your project successfully.