Commit Graph

1628 Commits

Author SHA1 Message Date
495ed3a334 feat(frontend): implement bulk user creation UI 2025-08-21 00:14:52 +03:30
af2b599dd6 feat(api): add bulk user creation endpoint 2025-08-20 23:59:15 +03:30
5a762ad918 fix(core): allow underscores in usernames 2025-08-20 23:45:01 +03:30
8341f23611 feat(cli): add bulk user creation command 2025-08-20 23:22:29 +03:30
c1a60cbf32 feat(core): add bulk user creation script 2025-08-20 23:20:41 +03:30
618e8a5466 chore(deps): Bump requests from 2.32.4 to 2.32.5
Bumps [requests](https://github.com/psf/requests) from 2.32.4 to 2.32.5.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.4...v2.32.5)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.32.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-19 22:25:29 +00:00
8f684de732 Feat: Add online user filter to users page 2025-08-20 00:53:19 +03:30
d9b906c618 🚀 [1.16.0] – Dashboard Redesign & Server Stats Upgrade 2025-08-19 23:53:17 +03:30
380373a317 Merge pull request #251 from ReturnFI/beta
Dashboard redesign & server stats upgrade
2025-08-19 23:52:37 +03:30
e920e14630 Update changelog 2025-08-19 23:51:25 +03:30
738619b1e4 feat(ui): Redesign dashboard to display detailed server stats 2025-08-19 23:40:07 +03:30
b3595c691b feat(api): Integrate uptime and reboot traffic stats into server API 2025-08-19 23:39:01 +03:30
6fa872b6c3 feat: optimize system monitor with async I/O and traffic since reboot
- Replace synchronous file operations with async aiofiles
- Implement concurrent data gathering using asyncio.gather()
- Move API calls to thread pool executor
- Add LRU cache for config file reads
- Optimize parsing functions for single-pass processing
- Reduce measurement intervals for faster response times
- Add system uptime and boot time display
- Track total network traffic since last reboot from /proc/net/dev
- Separate system traffic (since reboot) from user traffic (all-time)
- Add human-readable uptime formatting
- Enhance output with clear traffic categorization
2025-08-19 23:36:44 +03:30
cdab63a72a fix: count actual device connections instead of unique users 2025-08-18 16:06:45 +03:30
40ce17deea Hotfix(sub): Display correct user data on blocked page 2025-08-18 15:56:26 +03:30
d41a6a05ba 🔖 release:1.15.0 - Extra subscription configs & blocked-user check
🚫 feat: Blocked user validation in subscription endpoint

🌐 feat(subscription): Add external configs to NormalSub links

⚙️ feat(UI): Manage extra subscription configs in settings page

🖥️ feat(API): Webpanel API for extra subscription configs

🛠️ feat(CLI): Add CLI support for extra subscription configs
📜 feat(scripts): Introduce extra_config.py for managing vmess, vless, ss, trojan links
2025-08-18 00:02:51 +03:30
ad8eec569a Merge pull request #250 from ReturnFI/beta
Extra subscription configs & blocked-user check
2025-08-18 00:00:20 +03:30
7a624ef73f Update changelog 2025-08-17 23:59:18 +03:30
dd6c49cabf Clone Main 2025-08-17 23:48:21 +03:30
9c0aca7a5b Clone beta 2025-08-17 20:47:21 +03:30
b9f979d1ae Feat: Add blocked user check to subscription endpoint 2025-08-17 16:16:30 +03:30
8b2f22849b feat(subscription): add external configs to normal subscription links 2025-08-17 15:42:16 +03:30
7587d5a4a8 feat: add extra configs management UI to settings page 2025-08-17 15:40:23 +03:30
68dde4f863 feat: add webpanel API for extra subscription configs 2025-08-17 15:39:20 +03:30
491b384468 feat: add cli interface for extra subscription configs 2025-08-17 15:35:51 +03:30
d1385ac8c4 feat: add script to manage extra subscription links
Introduces a new script `extra_config.py` to manage additional proxy configurations (vmess, vless, ss, trojan) for subscription links.
2025-08-17 15:33:28 +03:30
bec447bc38 Merge pull request #242 from ReturnFI/dependabot/pip/multidict-6.6.4
chore(deps): Bump multidict from 6.6.3 to 6.6.4
2025-08-16 00:10:23 +03:30
f1505602be Update README.md 2025-08-14 23:40:04 +03:30
5d4219a5c7 🔖 release(1.14.0): Per-user unlimited IP support & web panel integration 2025-08-13 23:37:26 +03:30
70c1cca5ad Merge pull request #247 from ReturnFI/beta
Per-user unlimited IP support & web panel integration
2025-08-13 23:36:18 +03:30
5968903d0d Changes the add_user function's unlimited_user parameter to default to False. 2025-08-13 23:35:02 +03:30
9afada3dc5 Update changelog 2025-08-13 23:30:08 +03:30
5eb771c5fc Update changelog 2025-08-13 23:27:29 +03:30
9f253a5916 Clone main 2025-08-13 23:24:38 +03:30
75d417084f feat(cli): Add unlimited IP options to menu script 2025-08-13 23:19:46 +03:30
be5fe69f0b feat(web): Conditionally display IP limit UI based on service status 2025-08-13 23:06:43 +03:30
1763b74906 Clone Beta 2025-08-12 23:44:15 +03:30
6c6576ae87 feat(web): Add unlimited IP controls to users page 2025-08-12 23:41:15 +03:30
644c43b504 refactor(api): Align user schemas with CLI output and new features 2025-08-12 23:37:11 +03:30
75033231f2 feat: Integrate unlimited IP functionality into web panel 2025-08-12 23:36:22 +03:30
ceb1429535 fix: correct type hints for optional parameters in config_ip_limiter 2025-08-11 23:40:32 +03:30
c10c8a6813 chore(deps): Bump multidict from 6.6.3 to 6.6.4
Bumps [multidict](https://github.com/aio-libs/multidict) from 6.6.3 to 6.6.4.
- [Release notes](https://github.com/aio-libs/multidict/releases)
- [Changelog](https://github.com/aio-libs/multidict/blob/master/CHANGES.rst)
- [Commits](https://github.com/aio-libs/multidict/compare/v6.6.3...v6.6.4)

---
updated-dependencies:
- dependency-name: multidict
  dependency-version: 6.6.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 20:08:34 +00:00
e2a6444131 Merge pull request #236 from ReturnFI/dependabot/pip/anyio-4.10.0
chore(deps): Bump anyio from 4.9.0 to 4.10.0
2025-08-11 23:34:32 +03:30
707c81f73a Merge pull request #240 from ReturnFI/dependabot/pip/certbot-4.2.0
chore(deps): Bump certbot from 4.1.1 to 4.2.0
2025-08-11 23:33:48 +03:30
cd00781e52 Merge pull request #241 from ReturnFI/dependabot/pip/charset-normalizer-3.4.3
chore(deps): Bump charset-normalizer from 3.4.2 to 3.4.3
2025-08-11 23:33:28 +03:30
ba6d0db590 feat(cli): Add IP limit exemption to edit-user command 2025-08-11 23:32:39 +03:30
32f0f8c8d4 feat(scripts): Add unlimited IP option to user edit script 2025-08-11 23:29:56 +03:30
85d2e8b81f feat(cli): Integrate unlimited IP option for user creation 2025-08-11 23:28:51 +03:30
28444255fe chore(deps): Bump charset-normalizer from 3.4.2 to 3.4.3
Bumps [charset-normalizer](https://github.com/jawah/charset_normalizer) from 3.4.2 to 3.4.3.
- [Release notes](https://github.com/jawah/charset_normalizer/releases)
- [Changelog](https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.3)

---
updated-dependencies:
- dependency-name: charset-normalizer
  dependency-version: 3.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 19:55:15 +00:00
eac13764e2 feat: Add per-user IP limit exemption
Introduces a new 'unlimited_user' flag for users. When set to true, the user is exempt from the concurrent IP limit enforcement by `limit.sh`.

- `core/scripts/hysteria2/add_user.py`:
  - Adds an optional `unlimited_user` argument (defaults to false).
  - Stores the `unlimited_user` boolean in the `users.json` file when adding a user.

- `core/scripts/hysteria2/limit.sh`:
  - Modifies `check_ip_limit` function to first check the `unlimited_user` flag for the connecting user in `users.json`.
  - If the flag is true, the script bypasses the IP limit check for that user.
  - Uses `jq` for reliable parsing and includes a `grep` fallback for systems without `jq`.
  - Existing users without the flag are treated as limited (default behavior).
2025-08-11 23:21:36 +03:30