Skip to content
This repository was archived by the owner on Feb 12, 2021. It is now read-only.

Commit 6eb130a

Browse files
committed
🎉 Initial commit
0 parents  commit 6eb130a

File tree

153 files changed

+11186
-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.

153 files changed

+11186
-0
lines changed

.gitignore

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Xcode
2+
#
3+
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
4+
5+
.DS_Store
6+
7+
## User settings
8+
xcuserdata/
9+
10+
## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9)
11+
*.xcscmblueprint
12+
*.xccheckout
13+
14+
## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4)
15+
build/
16+
DerivedData/
17+
*.moved-aside
18+
*.pbxuser
19+
!default.pbxuser
20+
*.mode1v3
21+
!default.mode1v3
22+
*.mode2v3
23+
!default.mode2v3
24+
*.perspectivev3
25+
!default.perspectivev3
26+
27+
## Obj-C/Swift specific
28+
*.hmap
29+
30+
## App packaging
31+
*.ipa
32+
*.dSYM.zip
33+
*.dSYM
34+
35+
## Playgrounds
36+
timeline.xctimeline
37+
playground.xcworkspace
38+
39+
# Swift Package Manager
40+
#
41+
# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.
42+
# Packages/
43+
# Package.pins
44+
# Package.resolved
45+
# *.xcodeproj
46+
#
47+
# Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata
48+
# hence it is not needed unless you have added a package configuration file to your project
49+
# .swiftpm
50+
51+
.build/
52+
53+
# CocoaPods
54+
#
55+
# We recommend against adding the Pods directory to your .gitignore. However
56+
# you should judge for yourself, the pros and cons are mentioned at:
57+
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
58+
#
59+
# Pods/
60+
#
61+
# Add this line if you want to avoid checking in source code from the Xcode workspace
62+
# *.xcworkspace
63+
64+
# Carthage
65+
#
66+
# Add this line if you want to avoid checking in source code from Carthage dependencies.
67+
# Carthage/Checkouts
68+
69+
Carthage/Build/
70+
71+
# Accio dependency management
72+
Dependencies/
73+
.accio/
74+
75+
# fastlane
76+
#
77+
# It is recommended to not store the screenshots in the git repo.
78+
# Instead, use fastlane to re-generate the screenshots whenever they are needed.
79+
# For more information about the recommended setup visit:
80+
# https://docs.fastlane.tools/best-practices/source-control/#source-control
81+
82+
fastlane/report.xml
83+
fastlane/Preview.html
84+
fastlane/screenshots/**/*.png
85+
fastlane/test_output
86+
87+
# Code Injection
88+
#
89+
# After new code Injection tools there's a generated folder /iOSInjectionProject
90+
# https://github.com/johnno1962/injectionforxcode
91+
92+
iOSInjectionProject/

LICENSE

Lines changed: 674 additions & 0 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
2+
3+
# vulcan
4+
Open-source UONET+ app for Apple devices.
5+
6+
## Installation
7+
### Manual
8+
1. Clone the repo.
9+
2. Replace every `please.change.me` occurrence with your designated Bundle ID.
10+
3. Compile and run.
11+
12+
### Automatic
13+
You might want to look into [AltStore](https://altstore.io) or (if you're jailbroken) [ReProvision](https://github.com/Matchstic/ReProvision).
14+
15+
## Functionality
16+
### UONET+
17+
- [x] Grades
18+
- [x] Schedule
19+
- [x] Tasks
20+
- [x] Messages
21+
- [x] Notes
22+
- [ ] QR code logging in
23+
- [ ] Message attachements
24+
25+
### Core
26+
- [x] iOS app
27+
- [x] iPadOS app
28+
- [ ] watchOS app
29+
- [ ] macOS app
30+
- [ ] Today widget
31+
- [ ] Cursor support
32+
- [ ] Siri shortcuts/intents (*Handoff?*)
33+
- [ ] Notifications
34+
- [ ] Spotlight indexing
35+
36+
## FAQ
37+
### Why the app isn't in the App Store?
38+
**TL;DR:** I'm broke. Give me 99$ and it will be there.
39+
**Slightly longer answer:** Uploading apps on the App Store requires being a member of the [Apple Developer Program](https://developer.apple.com/programs/), which costs 99$ per year. If someone is generous enough to pay for that, then I'm more than happy to upload the app to the App Store.
40+
41+
### Is it safe to use?
42+
**I have no idea. You are using this app on your own responsibility.**
43+
44+
## Technical stuff
45+
- There's no profiling, ads, weird libraries or other bullshit.
46+
- The app is built using [SwiftUI](https://developer.apple.com/xcode/swiftui/), so the interface may sometimes be buggy. There's not much I can do about that.
47+
- API is based on [uonet-api-docs](https://gitlab.com/erupcja/uonet-api-docs) and my own analysis.
48+
- Network requests are made with [Combine](https://developer.apple.com/documentation/combine).
49+
- Data is stored using CoreData - it was my first time using it, so I'm pretty sure there's a lot of stuff I could do better. Contributions are more than welcome!
50+
51+
## Credits
52+
- [SwiftyJSON](https://github.com/SwiftyJSON/SwiftyJSON)
53+
- [kishikawakatsumi/KeychainAccess](https://github.com/kishikawakatsumi/KeychainAccess)
54+
- [erupcja/uonet-api-docs](https://gitlab.com/erupcja/uonet-api-docs)
55+
56+
## License
57+
[GPL v3.0](LICENSE)

Resources/Icon/Icon.png

70.9 KB
Loading

Resources/Icon/Vulcan.png

22.2 KB
Loading

Resources/Icon/Vulcan.sketch

2.15 MB
Binary file not shown.

Resources/Icon/Vulcan@2x.png

71.1 KB
Loading

Resources/Icon/Vulcan@3x.png

117 KB
Loading

Resources/Icon/icon_108pt@2x.png

5.85 KB
Loading

Resources/Icon/icon_20pt.png

361 Bytes
Loading

0 commit comments

Comments
 (0)