You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: update README for fork, Python 3.12 and clean up dead links
- Add fork notice with credits to original author bugy/script-server
- Remove dead links: Travis CI badge (404), Gitter badge/room (shut down
in 2023), demo server script-server.net (unreachable)
- Fix double-parenthesis typo in XSS wiki link (line 132 in original)
- Update requirements: Python 3.9+ minimum (3.12 recommended),
tornado >=6.1, requests >=2.28; document optional ldap3/bcrypt deps
with install instructions
- Add "What's new in this fork" section documenting 2025-05-27 changes
- Update contribution section to point to this fork's issue tracker
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
> **Fork** — This is a community-maintained fork of [bugy/script-server](https://github.com/bugy/script-server)(original author: [@bugy](https://github.com/bugy)). The upstream project is no longer actively maintained. See [What's new in this fork](#whats-new-in-this-fork) for the changes made here.
2
2
3
3
# script-server
4
-
Script-server is a Web UI for scripts.
4
+
5
+
Script-server is a Web UI for scripts.
5
6
6
7
As an administrator, you add your existing scripts into Script server and other users would be able to execute them via a web interface.
7
8
The UI is very straightforward and can be used by non-tech people.
8
9
9
-
No script modifications are needed - you configure each script in Script server and it creates the corresponding UI with parameters and takes care of validation, execution, etc.
10
-
11
-
[DEMO server](https://script-server.net/)
10
+
No script modifications are needed - you configure each script in Script server and it creates the corresponding UI with parameters and takes care of validation, execution, etc.
- Linux (main). Tested and working on Debian 10,11
58
+
- Linux (main). Tested and working on Debian 10,11
44
59
- Windows (additional). Light testing
45
60
- macOS (additional). Light testing
46
61
@@ -52,104 +67,108 @@ Internet connection is **not** needed. All the files are loaded from the server.
52
67
53
68
## Installation
54
69
### For production
55
-
1. Download script-server.zip file from [Latest release](https://github.com/bugy/script-server/releases/latest) or [Dev release](https://github.com/bugy/script-server/releases/tag/dev)
56
-
2. Create script-server folder anywhere on your PC and extract zip content to this folder
70
+
1. Download script-server.zip from [Latest release](https://github.com/bugy/script-server/releases/latest) (last upstream release: v1.18.0)
71
+
2. Create a script-server folder anywhere on your machine and extract the zip content into it
(For detailed steps on linux with virtualenv, please see [Installation guide](https://github.com/bugy/script-server/wiki/Installing-on-virtualenv-(linux)))
74
+
For detailed steps on Linux with virtualenv, see the [Installation guide](https://github.com/bugy/script-server/wiki/Installing-on-virtualenv-(linux)).
For the usage please check[this ticket](https://github.com/bugy/script-server/issues/171#issuecomment-461620836)
76
+
##### As a Docker container
77
+
Pre-built images are available on [Docker Hub](https://hub.docker.com/r/bugy/script-server/tags).
78
+
For usage instructions, see[this ticket](https://github.com/bugy/script-server/issues/171#issuecomment-461620836).
63
79
64
80
### For development
65
-
1. Clone/download the repository
66
-
2. Run 'tools/init.py --no-npm' script
81
+
1. Clone this repository
82
+
2. Run `tools/init.py --no-npm`
67
83
68
-
`init.py`script should be run after pulling any new changes
84
+
`init.py` should be run after pulling any new changes.
69
85
70
-
If you are making changes to web files, use `npm run build` or `npm run serve`
86
+
If you are making changes to web files, use `npm run build` or `npm run serve`.
71
87
72
-
### A issue running on OpenBSD and maybe other UNIX systems
73
-
See [A issue running on OpenBSD and maybe other UNIX systems](https://github.com/bugy/script-server/wiki/OpenBSD-process-termination-issues).
88
+
### A note on OpenBSD and some other UNIX systems
89
+
See [OpenBSD process termination issues](https://github.com/bugy/script-server/wiki/OpenBSD-process-termination-issues).
74
90
75
91
76
92
## Setup and run
77
-
1. Create configurations for your scripts in *conf/runners/* folder (see [script config page](https://github.com/bugy/script-server/wiki/Script-config) for details)
78
-
2. Launch launcher.py from script-server folder
79
-
* Windows command: launcher.py
80
-
* Linux command: ./launcher.py
93
+
1. Create configurations for your scripts in the *conf/runners/* folder (see [script config page](https://github.com/bugy/script-server/wiki/Script-config) for details)
94
+
2. Launch launcher.py from the script-server folder
95
+
* Windows: `launcher.py`
96
+
* Linux/macOS: `./launcher.py`
81
97
3. Add/edit scripts on the admin page
82
98
83
99
By default, the server will run on http://localhost:5000
84
100
85
101
### Server config
86
-
All the features listed above and some other minor features can be configured in *conf/conf.json* file.
87
-
It is allowed not to create this file. In this case, default values will be used.
88
-
See [server config page](https://github.com/bugy/script-server/wiki/Server-configuration) for details
102
+
All the features listed above and some other minor features can be configured in *conf/conf.json*.
103
+
It is allowed not to create this file — default values will be used in that case.
104
+
See [server config page](https://github.com/bugy/script-server/wiki/Server-configuration) for details.
89
105
90
106
### Admin panel
91
-
Admin panel is accessible on admin.html page (e.g. http://localhost:5000/admin.html)
107
+
Admin panel is accessible at admin.html (e.g. http://localhost:5000/admin.html)
92
108
93
109
## Logging
94
110
95
-
All web/operating logs are written to the *logs/server.log*
96
-
Additionally each script logs are written to separate file in *logs/processes*. File name format is
**Python version support:** updated minimum from Python 3.7 (end-of-life since June 2023) to **Python 3.9+** (Python 3.12 recommended).
135
154
136
-
If you like the project and think you could help with making it better, there are many ways you can do it:
155
+
**Fixes:**
156
+
- Replaced invalid string escape sequences (`\d`, `\w`, `\/`, `\ `, `\|`, `\p`, `\[`, `\.`) with raw strings (`r'...'`) in test files — these would become `SyntaxError` in Python 3.14
157
+
- Replaced deprecated `thread.setDaemon(True)` with `thread.daemon = True` in `user_file_storage.py` and `auth_abstract_oauth.py`
137
158
138
-
- Create a new issue for new feature proposal or a bug
139
-
-Implement existing issues (there are quite some of them: frontend/backend, simple/complex, choose whatever you like)
140
-
-Help with improving the documentation
141
-
-Set up a demo server
142
-
- Spread a word about the project to your colleagues, friends, blogs or any other channels
143
-
- Any other things you could imagine
159
+
**Dependencies (`requirements.txt`):**
160
+
-Raised Tornado floor from `>=4` to `>=6.1` (Tornado 4/5 are incompatible with Python 3.12)
161
+
-Added `requests>=2.28` as an explicit dependency (used by HTTP notification destinations)
162
+
-Documented optional dependencies (`ldap3`, `bcrypt`) with install instructions
163
+
164
+
## Contribution
144
165
145
-
Any contribution would be of great help and I will highly appreciate it!
146
-
If you have any questions, please create a new issue, or contact me via buggygm@gmail.com
166
+
If you find a bug or want to propose a feature, please [open an issue](https://github.com/knep/script-server/issues) on this fork.
147
167
148
-
## Asking questions
149
-
If you have any questions, feel free to:
150
-
- Ask in gitter: https://gitter.im/script-server/community
151
-
- or [create a ticket](https://github.com/bugy/script-server/issues/new)
152
-
- or contact me via email: buggygm@gmail.com (for some non-shareable questions)
0 commit comments