Skip to content

Commit 16fd06c

Browse files
committed
Initial release: v1.0.0
ExecScript - Mobile SSH script execution for Linux servers. Features: - Direct SSH connections (no backend required) - Script library with variable injection - Real-time and background execution via tmux/screen - Host key verification (MITM protection) - 5 cyberpunk terminal themes (Green, Amber, White, Cyan, Synthwave) - Secure credential storage (iOS Keychain / Android Keystore) - Command injection prevention - CI/CD pipeline for automated builds https://dayofgeek.com/execscript
0 parents  commit 16fd06c

File tree

185 files changed

+20281
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

185 files changed

+20281
-0
lines changed
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
name: Bug Report
3+
about: Create a report to help us improve ExecScript
4+
title: '[BUG] '
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
## Bug Description
11+
12+
A clear and concise description of what the bug is.
13+
14+
## Steps to Reproduce
15+
16+
1. Go to '...'
17+
2. Click on '....'
18+
3. Scroll down to '....'
19+
4. See error
20+
21+
## Expected Behavior
22+
23+
A clear and concise description of what you expected to happen.
24+
25+
## Actual Behavior
26+
27+
A clear and concise description of what actually happened.
28+
29+
## Screenshots
30+
31+
If applicable, add screenshots to help explain your problem.
32+
33+
## Device Information
34+
35+
- **Device:** [e.g., iPhone 14, Samsung Galaxy S23, Pixel 7]
36+
- **OS:** [e.g., iOS 17.2, Android 14]
37+
- **App Version:** [e.g., 1.0.0]
38+
- **Flutter Version:** [if known, e.g., 3.16.0]
39+
40+
## Server Information (if applicable)
41+
42+
- **SSH Server Type:** [e.g., OpenSSH, Dropbear]
43+
- **Authentication Method:** [Password / SSH Key / Both]
44+
- **Server OS:** [e.g., Ubuntu 22.04, Debian 12]
45+
46+
## Additional Context
47+
48+
Add any other context about the problem here, such as:
49+
- Does it happen consistently or intermittently?
50+
- Were you connected to a specific server?
51+
- Any error messages displayed?
52+
- Relevant logs (redact sensitive information)
53+
54+
## Possible Solution
55+
56+
If you have ideas on how to fix this, please describe them here.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
name: Feature Request
3+
about: Suggest an idea for ExecScript
4+
title: '[FEATURE] '
5+
labels: enhancement
6+
assignees: ''
7+
8+
---
9+
10+
## Problem/Motivation
11+
12+
A clear and concise description of what problem you're trying to solve.
13+
Ex. I'm always frustrated when [...]
14+
15+
## Proposed Solution
16+
17+
A clear and concise description of what you want to happen.
18+
19+
Describe the feature in detail:
20+
- How would it work?
21+
- Where would it appear in the UI?
22+
- What would the user experience be?
23+
24+
## User Story
25+
26+
As a [type of user], I want [goal/desire] so that [benefit].
27+
28+
Example:
29+
> As a DevOps engineer, I want to schedule scripts to run at specific times so that I can automate routine maintenance tasks.
30+
31+
## Alternatives Considered
32+
33+
A clear and concise description of any alternative solutions or features you've considered.
34+
35+
## Additional Context
36+
37+
Add any other context, screenshots, or mockups about the feature request here.
38+
39+
## Willingness to Contribute
40+
41+
- [ ] I am willing to submit a PR to implement this feature
42+
- [ ] I would need guidance on how to implement this
43+
- [ ] I cannot implement this myself
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
---
2+
name: Security Report
3+
about: Report a security vulnerability (private disclosure preferred)
4+
title: '[SECURITY] '
5+
labels: security
6+
assignees: ''
7+
8+
---
9+
10+
## ⚠️ IMPORTANT: Private Disclosure Preferred
11+
12+
**DO NOT** include sensitive vulnerability details in this public issue if the vulnerability is not yet fixed or disclosed.
13+
14+
**For unreported/unfixed vulnerabilities:**
15+
- Email security@dayofgeek.com instead
16+
- See [SECURITY.md](../../SECURITY.md) for disclosure procedures
17+
- Allow time for coordinated disclosure
18+
19+
Only use this public template for:
20+
- Security hardening suggestions (not vulnerabilities)
21+
- Previously disclosed vulnerabilities
22+
- Documentation improvements related to security
23+
24+
---
25+
26+
## Vulnerability Summary
27+
28+
Brief, non-sensitive summary of the security concern.
29+
30+
## Severity Assessment
31+
32+
- [ ] Critical — Remote code execution, credential theft, etc.
33+
- [ ] High — MITM possible, data exposure, etc.
34+
- [ ] Medium — Information disclosure, DoS, etc.
35+
- [ ] Low — UI issues, minor leaks, etc.
36+
- [ ] Informational — Best practice suggestions
37+
38+
## Affected Versions
39+
40+
- Version(s): [e.g., 1.0.0]
41+
- Platform(s): [Android / iOS / Web / All]
42+
43+
## Description
44+
45+
General description without exploit details (for public issues).
46+
47+
For detailed technical information, use private email disclosure.
48+
49+
## Impact
50+
51+
What could happen if this were exploited? (Keep general for public issues)
52+
53+
## Suggested Mitigation
54+
55+
Any ideas on how to fix or mitigate this issue?
56+
57+
## Disclosure Timeline
58+
59+
If this has already been privately disclosed:
60+
- Date reported: [YYYY-MM-DD]
61+
- Status: [Acknowledged / In Progress / Fixed]
62+
- Expected disclosure date: [YYYY-MM-DD]
63+
64+
## References
65+
66+
- Related CVEs (if any):
67+
- Related issues:
68+
- External references:
69+
70+
---
71+
72+
## Checklist
73+
74+
- [ ] I have read the [Security Policy](../../SECURITY.md)
75+
- [ ] If this is a new vulnerability, I have emailed security@dayofgeek.com
76+
- [ ] I have not included exploit code in this public issue
77+
- [ ] I agree to coordinate disclosure timing with maintainers

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
## Description
2+
3+
Brief description of the changes in this PR.
4+
5+
Fixes # (issue number)
6+
7+
## Type of Change
8+
9+
- [ ] 🐛 Bug fix (non-breaking change which fixes an issue)
10+
- [ ] ✨ New feature (non-breaking change which adds functionality)
11+
- [ ] 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
12+
- [ ] 📚 Documentation update
13+
- [ ] 🔒 Security fix
14+
- [ ] 🎨 UI/UX improvement
15+
- [ ] ⚡ Performance improvement
16+
- [ ] 🔧 Refactoring (no functional changes)
17+
- [ ] 🧪 Test updates
18+
- [ ] 📦 Dependency updates
19+
- [ ] 🏗️ Build/CI changes
20+
21+
## Testing Performed
22+
23+
### Manual Testing
24+
- [ ] Tested on Android device/emulator (version: ___)
25+
- [ ] Tested on iOS device/simulator (version: ___)
26+
- [ ] Tested on Web platform
27+
- [ ] Verified UI changes on different screen sizes
28+
29+
### Automated Testing
30+
- [ ] All existing tests pass (`flutter test`)
31+
- [ ] New tests added for new functionality
32+
- [ ] Test coverage maintained or improved
33+
- [ ] `flutter analyze` passes with no issues
34+
35+
### Specific Test Cases
36+
Describe any specific scenarios you tested:
37+
1.
38+
2.
39+
3.
40+
41+
## Screenshots/Videos
42+
43+
If applicable, add screenshots or videos to help explain your changes.
44+
45+
| Before | After |
46+
|:------:|:-----:|
47+
| | |
48+
49+
## Checklist
50+
51+
### Code Quality
52+
- [ ] Code follows the project's style guidelines
53+
- [ ] Self-review of code completed
54+
- [ ] Code is commented where necessary
55+
- [ ] No hardcoded secrets or credentials
56+
- [ ] No unnecessary console.log/debug statements
57+
58+
### Testing
59+
- [ ] Tests added for new functionality
60+
- [ ] All tests pass locally
61+
- [ ] Edge cases considered and tested
62+
- [ ] Error handling implemented and tested
63+
64+
### Documentation
65+
- [ ] README updated (if needed)
66+
- [ ] CHANGELOG updated (if needed)
67+
- [ ] Code comments added/updated
68+
- [ ] API documentation updated (if applicable)
69+
70+
### Security
71+
- [ ] Security implications considered
72+
- [ ] No new security vulnerabilities introduced
73+
- [ ] Sensitive data handled properly
74+
- [ ] Input validation implemented (if applicable)
75+
76+
## Additional Notes
77+
78+
Any additional information, concerns, or context for reviewers:
79+
80+
-
81+
-
82+
83+
## Related PRs
84+
85+
List any related PRs:
86+
87+
- #
88+
89+
## Reviewer Notes
90+
91+
Specific areas where feedback is requested:
92+
93+
-
94+
95+
---
96+
97+
**By submitting this PR, I confirm that:**
98+
- I have read the [CONTRIBUTING.md](../CONTRIBUTING.md) guidelines
99+
- My contribution is my own original work
100+
- I have the rights to submit this contribution
101+
- I license this contribution under the project's GPL v3 license

.github/workflows/ci.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
flutter_analyze:
11+
name: Flutter Analyze
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
- uses: subosito/flutter-action@v2
16+
with:
17+
flutter-version: '3.41.2'
18+
channel: 'stable'
19+
- run: flutter pub get
20+
- run: flutter analyze --no-fatal-warnings --no-fatal-infos
21+
- run: dart format --set-exit-if-changed lib/
22+
23+
flutter_test:
24+
name: Flutter Tests
25+
runs-on: ubuntu-latest
26+
steps:
27+
- uses: actions/checkout@v4
28+
- uses: subosito/flutter-action@v2
29+
with:
30+
flutter-version: '3.41.2'
31+
channel: 'stable'
32+
- run: flutter pub get
33+
- run: flutter test
34+
35+
android_build:
36+
name: Android Build
37+
runs-on: ubuntu-latest
38+
steps:
39+
- uses: actions/checkout@v4
40+
- uses: subosito/flutter-action@v2
41+
with:
42+
flutter-version: '3.41.2'
43+
channel: 'stable'
44+
- run: flutter pub get
45+
- run: flutter build apk --debug
46+
- uses: actions/upload-artifact@v4
47+
with:
48+
name: android-apk
49+
path: build/app/outputs/flutter-apk/app-debug.apk

.gitignore

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Miscellaneous
2+
*.class
3+
*.log
4+
*.pyc
5+
*.swp
6+
.DS_Store
7+
.atom/
8+
.build/
9+
.buildlog/
10+
.history
11+
.svn/
12+
.swiftpm/
13+
migrate_working_dir/
14+
15+
# IntelliJ related
16+
*.iml
17+
*.ipr
18+
*.iws
19+
.idea/
20+
21+
# The .vscode folder contains launch configuration and tasks you configure in
22+
# VS Code which you may wish to be included in version control, so this line
23+
# is commented out by default.
24+
#.vscode/
25+
26+
# Flutter/Dart/Pub related
27+
**/doc/api/
28+
**/ios/Flutter/.last_build_id
29+
.dart_tool/
30+
.flutter-plugins-dependencies
31+
.pub-cache/
32+
.pub/
33+
/build/
34+
/coverage/
35+
36+
# Symbolication related
37+
app.*.symbols
38+
39+
# Obfuscation related
40+
app.*.map.json
41+
42+
# Android Studio will place build artifacts here
43+
/android/app/debug
44+
/android/app/profile
45+
/android/app/release

0 commit comments

Comments
 (0)