Skip to content

Central web portal uniting all Vault-Web applications — secure access to cloud, password manager, chats, and more within a private VPN.

License

Notifications You must be signed in to change notification settings

Vault-Web/vault-web

Repository files navigation

Vault Web

Vault Web is the core project of the Vault Web ecosystem.
It is a full-stack application combining a Spring Boot backend, an Angular frontend, and a PostgreSQL database.

Vault Web acts as a central dashboard for a modular, self-hosted home server ecosystem. It provides a single entry point where multiple services are integrated into one secure web interface.


What Vault Web Provides

Vault Web is responsible for:

  • 💬 Internal chats and collaboration tools
  • 🧑‍💻 User and session management
  • 🔐 Central authentication (JWT-based)
  • 🧩 Frontend integration of external services

Additional services are not implemented directly in this repository, but are embedded into the Vault Web frontend.

For example, file storage and file management are provided by the Cloud Page service:
👉 https://github.com/Vault-Web/cloud-page


Project Structure

  • 📁 DIRECTORY.md – generated project structure overview
  • 📚 Javadoc – backend API documentation

Local Development

Vault Web uses Docker for local development.

Requirements

  • Docker & Docker Compose
  • Java 21+ (Java 24 supported)
  • Node.js & npm

1. Clone the Repository

git clone https://github.com/Vault-Web/vault-web.git
cd vault-web

2. Environment Configuration (.env)

⚠️ You do NOT need to create a .env file manually. A .env file already exists in the repository.

You may adjust the values if needed, but make sure that:

The database configuration in .env matches exactly with the backend application.properties.


3. Start PostgreSQL and pgAdmin

docker compose up -d

4. Backend (Spring Boot)

Configuration file: backend/src/main/resources/application.properties

Ensure the database values match the .env file.

Start the backend:

cd backend
./mvnw spring-boot:run

Timezone configuration (important for some environments)

On some systems, the backend may fail to start because PostgreSQL rejects a deprecated JVM timezone identifier during startup.

If you encounter an error like:

FATAL: invalid value for parameter "TimeZone"

see common_problems.md for platform-specific troubleshooting and startup guidance.


5. Frontend (Angular)

cd frontend
npm install
ng serve

Open: 👉 http://localhost:4200


Notes

This project is intended for self-hosted and home-server environments. Contributions and feedback are welcome.


Troubleshooting

If you encounter setup or startup issues that are not covered above, see common_problems.md for platform-specific guidance and fixes.

About

Central web portal uniting all Vault-Web applications — secure access to cloud, password manager, chats, and more within a private VPN.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 15