universe

Universe
git clone https://git.dasho.dev/universe.git
Log | Files | Refs | Submodules | README

README.md (4323B)


d-a-s-h-o/universe

🚀 Welcome to the Universe Monorepo!

This is the central repository for all my development projects, including chat applications, microservices, documentation, personal tools, and more. By managing everything under one roof, this monorepo ensures better asset sharing, unified tooling, and streamlined CI/CD workflows.

📂 Projects Included

🎯 Why Use a Monorepo?

🚀 Getting Started

Cloning with Submodules

This repository includes a submodule for the portfolio project. To ensure it is initialized correctly, clone with:

git clone --recurse-submodules git@github.com:d-a-s-h-o/universe.git

If you have already cloned the repository, initialize and update submodules manually:

git submodule update --init --recursive

Clone the Monorepo

This repo is large, so use sparse checkout to download only the necessary projects.

git clone --filter=blob:none --no-checkout git@github.com:d-a-s-h-o/universe.git
cd universe
git sparse-checkout init --cone
git sparse-checkout set chat droplets docs

git checkout main

Work on Multiple Projects Simultaneously

Use worktrees to keep separate working directories for different projects without switching branches.

# Create a worktree for chat
mkdir ../chat-worktree
cd ../chat-worktree
git worktree add . ../universe main:chat

Commit Message Format

To maintain consistency, use the following format:

[project] <emoji> type(scope): subject

Examples:

[chat] 🚀 feat(auth): add JWT authentication
[docs] 📖 docs(readme): update installation guide

🏷️ Versioning Strategy

All projects follow an epoch-based semantic versioning system:

(EPOCH * 100 + Major).Minor.Patch

Example Versions:

Tagging a Release

git tag chat-v101.2.3
git push origin chat-v101.2.3

🔀 Branching Strategy

Branches should be used sparingly:

🛠 CI/CD & Containers

Each project has independent GitHub Actions workflows and container builds pushed to GHCR.

🔍 Additional Considerations

📜 License

This repository follows an open-source but restricted use model. Check individual projects for specific licensing terms.

🏁 Conclusion

This monorepo is built for scalability, efficiency, and ease of use. Use sparse checkouts, worktrees, and modular CI/CD workflows to keep development streamlined. Checkout the MONOREPO.md file for more information on this monorepo and a detailed guide of how to use it.

For any questions, open an issue or ping @Dasho. 🚀