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
Add GitHub OAuth sign in (I aint dealing with passwords)
Write documentation
Have download page give a link to the latest GitHub release as well as install instructions (put it in your path)
Package upload stuff (See below)
Database stuff (See below)
Database:
Table to keep track of GitHub usernames and user IDs (As a cache to avoid mass API queries)
Table to keep track of packages (ID, name, description, owner, creation_date)
Table to keep track of package versions (ID, package_id [FK], release notes, version number, download count, release_date, byond version)
All of this needs to be managed by EntityFramework. No exceptions.
Package creation:
Restrict names to alphanumeric, no spaces, all lowercase
Short package description
Package URL stuff (Documentation + Source), both optional
Redirect to the package page on completion
Package page need an edit button
Release creation:
Accept version as semver
Accept package upload in zip format
Documentation dictates how a zip must be laid out (There must be a dmpm_includes.dm in the top directory with the required DM file includes inside)
Maybe some sort of validation to see if the code compiles. Package should be independent. I could make a test env that grabs the BYOND version the package wants, and compiles dmpm_includes.dm Can be done later
Obviously, make it so you can only upload to packages you own
Cap uploads to 5mb
Store packages in the ASP app app_data
App_Data/Packages/Package_Id/Version_Id.zip --> GET /download/packagenames/version
Flow will be create package --> create version
Package data format
Validate that the package has an includes.dm file inside it (ZipFile.files)
package_root:
|
|--- includes.dm
| |___ in here is your #include statements for stuff in `code`
|
|--- code
|___ in here is your code that changes with each release
Pages - Dynamic:
List all packages with search and paging
List packages belonging to one user
List releases and info for a package
Package creation page (see above)
Release upload page (see above)
Pages - Static:
Install page
Client Documentation page
Package Documentation page
Package download:
Get latest version by max ID in the releases table where the package ID corresponds properly.
Other:
CI for the repo
Readme for the repo
The text was updated successfully, but these errors were encountered:
Core:
Database:
Package creation:
Release creation:
dmpm_includes.dm
in the top directory with the required DM file includes inside)Maybe some sort of validation to see if the code compiles. Package should be independent. I could make a test env that grabs the BYOND version the package wants, and compilesCan be done laterdmpm_includes.dm
app_data
App_Data/Packages/Package_Id/Version_Id.zip
--> GET/download/packagenames/version
includes.dm
file inside it (ZipFile.files)Pages - Dynamic:
Pages - Static:
Package download:
Other:
The text was updated successfully, but these errors were encountered: