Appbox provides blazing fast app hosting with tailored, optimized cloud services customizable to your needs. Our platform offers a range of features including one-click app installations, VPN services, Plex media server support, root access, and more.
This repository contains the open-source code for the Appbox website and our upcoming control panel. We've decided to make this project open source to:
- Foster community involvement in our platform's development
- Improve transparency in how we operate
- Allow our users to contribute directly to features they care about
- Enable community contributions to our documentation
- Build a better product through collaborative development
- Next.js-based website: Modern, fast, and SEO-optimized
- Comprehensive documentation: Detailed guides for all aspects of our service
- Multi-language support: Documentation available in multiple languages
- Interactive control panel: (Coming soon) Manage your Appbox services with ease
- Node.js 23.11.0 or later
- pnpm (we use this as our package manager)
-
Clone the repository:
git clone https://github.com/appbox-co/appbox.git cd website
-
Install dependencies:
pnpm install
-
Start the development server:
pnpm dev
-
Open http://localhost:3000 with your browser to see the result.
.
├── apps/
│ ├── content/ # Content files
│ │ ├── blog/ # Blog posts in MDX format
│ │ │ ├── en/ # English blog posts
│ │ │ └── pt/ # Portuguese blog posts
│ │ ├── docs/ # Documentation in MDX format
│ │ │ ├── en/ # English documentation
│ │ │ └── pt/ # Portuguese documentation
│ │ └── policies/ # Policy documents in MDX format
│ │ └── en/ # English policy documents
│ └── web/ # Next.js web application
│ ├── public/ # Static assets
│ └── src/ # Source code
│ ├── app/ # Next.js app router
│ ├── components/ # React components
│ ├── config/ # Site configuration
│ ├── i18n/ # Internationalization
│ ├── lib/ # Utility libraries
│ └── styles/ # CSS styles
└── packages/ # Shared packages
├── eslint-config/ # ESLint configuration
└── typescript-config/ # TypeScript configuration
We welcome contributions from everyone, especially for documentation! Here's how you can contribute:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'feat: add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
We follow the Conventional Commits specification for our commit messages. This helps us generate changelogs and makes commit messages more readable.
The commit message should be structured as follows:
<type>[optional scope]: <description>
[optional body]
Common types include:
docs
: Documentation changesfeat
: New featuresfix
: Bug fixeschore
: Maintenance tasksstyle
: Code style/formatting changesrefactor
: Code changes that neither fix bugs nor add featurestest
: Adding or correcting tests
Examples:
feat: add support for Polish language
fix(docs): correct typos in installation guide
chore: update dependencies to latest versions
Our repository has a commit-msg hook that enforces this format.
To add new documentation:
- Create a new
.mdx
file in theapps/content/docs/[language]
folder. - Add the document to the navigation menu in
src/config/docs.ts
.
For more details, see our Adding New Docs guide.
- Support Tickets - Get help with your service
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to all our users who provide valuable feedback
- Special appreciation to our contributors who help make this project better
- OpenDocs for the documentation framework
We're excited about this new project and can't wait to see what we can build together with the community!