summaryrefslogtreecommitdiff
path: root/archived/projt-launcher/README
blob: 2380efb7106906beb01f219ea0d5fb391e92ec1b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
ProjT Launcher
==============

A Minecraft launcher engineered for long-term maintainability, architectural clarity,
and controlled ecosystem evolution.

ProjT Launcher is a structurally disciplined fork of Prism Launcher, diverging
intentionally to prevent maintenance decay, dependency drift, and architectural
erosion over time.

Why ProjT Launcher?
-------------------

Long-term maintainability
  Explicit architectural constraints and review rules prevent uncontrolled technical debt.

Controlled third-party integration
  External dependencies are maintained as detached forks with documented patch and update policies.

Deterministic CI and builds
  Exact dependency versions and constrained build inputs enable reproducible builds across environments.

Structural clarity
  Enforced MVVM boundaries and clearly separated modules simplify review, refactoring, and long-term contribution.

Download
--------

Releases: https://gitlab.com/Project-Tick/core/ProjT-Launcher/-/releases – Stable builds only. Nightly builds are not provided.
Website: https://projecttick.org/p/projt-launcher/

Build
-----

Quick start for release builds:


git clone --recursive https://gitlab.com/Project-Tick/core/ProjT-Launcher.git
cd ProjT-Launcher
cmake --preset [macos OR linux OR windows_msvc OR windows_mingw]
cmake --build --preset [macos OR linux OR windows_msvc OR windows_mingw] --config [Debug OR Release]


For development setup with presets and full tooling, see docs/contributing/GETTING_STARTED.md

Requirements
************

|   Tool   | Version |
| -------- | ------- |
| CMake    | 3.22+   |
| Qt       | 6.10.x  |
| Compiler | C++20   |

Nix
***

nix build .#projtlauncher


Structure
---------

launcher/       Application (C++/Qt)
website/        Website (Eleventy)
bot/            Automation (Cloudflare Workers)
meta/           Metadata generator (Python)
docs/           Documentation

Detached Fork Libraries
***********************

zlib/           Compression
bzip2/          Compression
quazip/         ZIP handling
cmark/          Markdown parsing
tomlplusplus/   TOML parsing
libqrencode/    QR codes
libnbtplusplus/ NBT format
gamemode/       GameMode

NOTE:
These directories contain original upstream READMEs preserved for reference.
For Project Tick–specific documentation, see docs/handbook/ or https://projecttick.org/handbook

Vendored Libraries
******************

LocalPeer/      Single instance
murmur2/        Hash functions
qdcss/          Dark CSS
rainbow/        Terminal colors
systeminfo/     System info

Documentation
-------------

Contributing: CONTRIBUTING.md
Getting Started: docs/contributing/GETTING_STARTED.md
Code Style: docs/contributing/CODE_STYLE.md
Architecture: docs/contributing/ARCHITECTURE.md
Developer Handbook: docs/handbook/ or https://projecttick.org/handbook

License
-------

Multiple licenses apply to different components:

- Launcher: GPL-3.0-only: LICENSES/GPL-3.0-only.txt and Please see code headers
- Metadata: MS-PL: meta/LICENSE

Contributions to each component are licensed under its respective license. See COPYING for details.

Links
-----

Website: https://projecttick.org/p/projt-launcher/
Project Tick Website: https://projecttick.org/
Issues: https://gitlab.com/Project-Tick/core/ProjT-Launcher/-/issues

--------------------------------------------------------------

This project is Official Project Tick Product.

Please see Project Tick Trademark of https://projecttick.org/trademark