Welcome to Typenik
Upload the application files, complete these checks, then create your account. No database or launch scripts are needed.
1. Check this server
| Check | Result |
|---|---|
| PHP version | OK — 8.3.36 (8.2 or newer required) |
| PHP extension: mbstring | OK — Available |
| PHP extension: zip | OK — Available |
| PHP extension: dom | OK — Available |
| PHP extension: libxml | OK — Available |
| PHP extension: json | OK — Available |
| PHP extension: session | OK — Available |
| Authentication library | OK — Loaded |
| Application file: index.php | OK — Must exist and be readable by PHP. |
| Application file: login.php | OK — Must exist and be readable by PHP. |
| Application file: manager.php | OK — Must exist and be readable by PHP. |
| Application file: editor.php | OK — Must exist and be readable by PHP. |
| Application file: settings.php | OK — Must exist and be readable by PHP. |
| Application file: export.php | OK — Must exist and be readable by PHP. |
| Application file: lib/sanitise.php | OK — Must exist and be readable by PHP. |
| Application file: lib/projects.php | OK — Must exist and be readable by PHP. |
| Application file: lib/manager-ui.php | OK — Must exist and be readable by PHP. |
| Application file: lib/account-menu.php | OK — Must exist and be readable by PHP. |
| Application file: lib/export-settings.php | OK — Must exist and be readable by PHP. |
| Storage: /home/u656934399/domains/typenik.com/public_html/lib/../data | OK — Create, write, lock, read, rename and delete tests passed. |
| Storage: /home/u656934399/domains/typenik.com/public_html/documents | OK — Create, write, lock, read, rename and delete tests passed. |
| Storage: /home/u656934399/domains/typenik.com/public_html/documents/archive | OK — Create, write, lock, read, rename and delete tests passed. |
| Export-settings contents | OK — Valid saved settings, or defaults for a new installation. |
| Secure connection | OK — HTTPS detected. |
| Session storage | OK — Session write/read test passed. |
Server platform: Linux. PHP service identity: u656934399.
2. Protect private files
Browser sign-in does not protect direct downloads of JSON files. Block HTTP access to data/, documents/ (including archives/history), and lib/. Protect any separate backup or history folders too.
The checks above create missing Apache .htaccess and IIS web.config deny rules in data/documents without saving any credentials. Existing rules are never overwritten. These files only work when the web server supports and honours them; they are not proof that access is blocked.
nginx configuration
nginx ignores .htaccess. Add this inside the site's server block, before any generic PHP or other regex locations, then test and reload nginx. Remove or adapt any higher-priority ^~ or exact locations that would bypass it.
location ~* ^/(?:data|documents|lib|history|backups|tests)(?:/|$) {
deny all;
}
Keep index index.php index.html; in the site configuration. For subdirectory installations the rule above includes the detected application prefix.
Check that protection really works
Before creating an account, put a harmless text file in data and another in documents. Try opening both files by URL: each must return 403 or 404, not its contents. Repeat for any other private storage folders, then delete only the harmless test files. Never use an account file as a public-download test.
If you use Apache, allow Require rules in these directories. IIS needs the URL Authorization feature/configuration. Use the bundled server examples if your host does not honour per-directory rules.
3. Create your account
The recovery token will appear once after account creation. Keep it safe.