┌─────────────────────────────────────────────────────────┐
_ _ _
| | (_) (_)
__ _ _ __ | | __ __ _ _ _ __ _ ___
/ _` | | '__| | |/ / / _` | | | | '_ \ | | / _ \
| (_| | | | | < | (_| | | | | | | | _ | | | (_) |
\__,_| |_| |_|\_\ \__,_| |_| |_| |_| (_) |_| \___/
└─────────────────────────────────────────────────────────┘
- This project allows users to customize the content by adding their own information.
- Additionally, it provides statistics that allow users to track the number of visitors to the site.
-
Check URL and Port
- Move your mouse pointer over the [Preview] → [Running URL and Port] button in the menu bar and click the button.
- Check that the domains are registered on the 3000 and 8080 ports.
- If not, register the domain.
-
Environment variables and config settings
- Navigate to the project's root folder.
cd /workspace/portfolio
- Run the
./sh/update_user.sh
script.
sh/update_user.sh
- During the script execution, enter the
user
andpassword
.
Enter SECURITY_USER: {your_username} Enter SECURITY_PASSWORD: {your_password}
- Access the website and log in using the
user
andpassword
entered during the script execution. - You can change the user information, simply re-run the
./sh/update_user.sh
script to update the settings. - If the server is running, you need to restart the server to apply the changes.
-
Check Dependencies
- If you want to install the required module, enter the following in the terminal
cd /workspace/portfolio
to go to the project root directory../sh/check_dependency.sh
into terminal.
-
Check CORS
- You must add your frontend URL(domain) to the CORS settings
- Open
back/src/.../config/web/WebConst.java
and add your frontend URL(domain) to theCORS_URL
variable - for example (
⚠️ Caution : add your full domain including https://, not just the domain name)
public static final List<String> ALLOWED_ORIGINS = List.of("https://{your-full-domain}");
-
Add Secret key in application.yml
cd /workspace/portfolio
to go to the project root directory.- Generate the secret key using the following command
` source <(./sh/generate-jwt-secret.sh)`
- If the server is running, you need to restart the server to apply the changes.
-
Run Project
- Click [Run Portfolio] button in the menu bar
- Alternatively, You can use the shell command.
- use
service start mysql
to start the mysql service - go to
cd /workspace/portfolio
and run thepm2 start ecosystem.config.js
command directly into terminal
- use
- To stop the project, use the
pm2 delete all
script.
-
Customization
- You have the opportunity to craft your own unique portfolio by customizing the files located within the src folder inside the
front
directory. - To customize your portfolio, navigate to the
front/src
directory. Focus on the index.tsx components in theabout
,contact
,home
, andprojects
folders within the app directory. Follow the comments in these files to tailor your portfolio to your needs and preferences.
- You have the opportunity to craft your own unique portfolio by customizing the files located within the src folder inside the
client
front
├── node_modules
├── next.config.ts
├── package-lock.json
├── package.json
├── tsconfig.json
├── public
│ └── images
└── src
├── app
│ ├── about
│ ├── contact
│ ├── home
│ ├── projects
│ ├── layout.tsx
│ └── page.tsx
├── components
│ ├── CustomLink.tsx
│ ├── Providers.tsx
│ ├── charts
│ │ ├── CustomTooltip.tsx
│ │ ├── DailyChart.tsx
│ │ ├── LoadingSpinner.tsx
│ │ ├── TotalVisitors.tsx
│ │ └── WeeklyChart.tsx
│ └── common
│ ├── ChartNavigation
│ ├── Footer
│ ├── Header
│ └── Navigation
├── lib
│ ├── constant
│ │ ├── api.ts
│ │ └── path.ts
│ ├── generalResponse.ts
│ └── instance.ts
├── pages
│ ├── api
│ │ └── get-ip.ts
│ ├── inquiries.tsx
│ ├── login.tsx
│ ├── network-error.tsx
│ └── statistics.tsx
├── shared
│ ├── auth
│ ├── contact
│ ├── socket
│ └── visitor
├── styles
│ ├── emotion.d.ts
│ ├── globals.css
│ ├── page.module.css
│ └── theme
│ ├── colors.ts
│ └── index.ts
└── types
└── axios.d.ts.ts
server
back
├── build.gradle
├── gradlew
├── settings.gradle
├── gradle
│ └── wrapper
└── src
└── main
└── java
└── arkain
└── dev
└── portfolio
└── server
├── auth
│ ├── app
│ │ └── dto
│ ├── domain
│ ├── repo
│ └── ui
├── common
│ ├── dto
│ ├── exception
│ ├── filter
│ └── web
│ └── ui
├── config
│ ├── security
│ │ ├── domain
│ │ ├── jwt
│ │ └── provider
│ ├── socket
│ └── web
│ └── resolver
├── contact
│ ├── app
│ │ └── dto
│ ├── repo
│ │ └── entity
│ └── ui
└── visitor
├── app
│ ├── dto
│ └── util
├── repo
│ └── jpa
│ └── entity
└── ui
-
Get URL and Port
- You can get the default URL/Port and add URL/Port on the top right.
- Move your mouse pointer over the [Preview] → [Running URL and Port] button in the menu bar (no click needed).
-
Command feature
- You can simply run your script using the shortcut icons on the top right.
- Move your mouse pointer over the [Run] → [Add run command] button in the menu bar (no click needed).
-
SSH Configuration
- This feature is only available for membership users.
- You can SSH to the Arkain container from the outside via the [Menu]->[SSH Configuration] in menu bar.
Visit https://arkain.io to support and learn more about using Arkain. To watch some usage guides, visit https://docs.arkain.io