mirror of
				https://github.com/DarkflameUniverse/NexusDashboard.git
				synced 2025-11-03 21:51:53 +00:00 
			
		
		
		
	
			
				
					
						
					
					c94d1cc62ceeb94ce1d164628f8e13f0e198244e
				
			
			
		
	Nexus Dashboard
Features
- Account Management:
- Ban, Lock, and Mute accounts (This Mute affects all Characters)
 - Email (all optional):
- Require email verification
 - Reset Password via Email
 - User Registration
 - Invitations ( TODO: Implement this )
 - Invitation Only Registration ( TODO: Implement this )
 
 
 - Play Key Management:
- Create, Edit, and Add notes to play keys
 - View accounts Tied to a play key
 
 - Character Management:
- Rescue: Pull character to a previously visited world
 - Restrict Trade: Toggle the character's ability to trade
 - Restrict Mail: Toggle the character's ability to send mail
 - Restrict Chat: Toggle the character's ability to send chat messages
 - Inventory viewer
- View backpack contents, vault, models, and more!
 
 - Stats Viewer
 
 - Moderation:
- Character Names:
- Approve and mark as needs rename
 
 - Pet Names:
- Auto-moderation of Pet names based on already moderated names
- This is a scheduled tack that runs in the background every hour
 
 - Character Association, to see who has requested what name
 - Name cleanup: remove names of deleted pets/characters
 
 - Auto-moderation of Pet names based on already moderated names
 - Properties:
- Approve and Un-approve Properties
 - Property/Model viewer
- Pre-built and UGC model rendering
 - View Properties in full 360 in the browser!
 - View in LOD0 (High), LOD1(Medium), or LOD2(Low) quality
 - Download models
 
 
 
 - Character Names:
 - Bug Reports:
- View and Resolve bug reports
 
 - Logs:
- Command: View commands that have been run
 - Activity: View character activity of entering and exiting worlds
 - Audit:
- View moderation activity (characters, pets, properties)
 - View GM Level changes
 - View Send Mail usage
 
 - System: View Extra logging of background activities of Nexus Dashboard
 
 - Send Mail:
- Send Mail to characters
 - Attach items to Mail
 
 - Economy Reports:
- Reports are generated as a scheduled background task run every day at 2300 UTC
 - Accounts with GM Level 3 and above are ignored
 - Item reports:
- Reports numbers of items in existence
 - Includes backpack and Vault items
 
 - Currency:
- Reports how much currency that characters posses
 
 - U-Score:
- Reports how much U-Score that characters posses
 
 
 - Analytics:
- Provide reporting to Developers to help better solve issues
 - Disabled by default. Set 
ALLOW_ANALYTICSto true to enable. 
 
Deployment
Docker
docker run -d \
    -e APP_SECRET_KEY='<secret_key>' \
    -e APP_DATABASE_URI='mysql+pymysql://<username>:<password>@<host>:<port>/<database>' \
    # you can include other optional Environment Variables from below like this
    -e REQUIRE_PLAY_KEY=True
    -p 8000:8000/tcp
    -v /path/to/unpacked/client:/app/luclient:rw \
    -v /path/to/cachedir:/app/cache:rw \
    aronwk/nexus-dashboard:latest
/app/luclientmust be mapped to the location of an unpacked client- you only need 
res/andlocale/from the client, but dropping the whole client in there won't hurt 
- you only need 
 - Use 
fdb_to_sqlite.pyin lcdr's utilities onres/cdclient.fdbin the unpacked client to convert the client database tocdclient.sqlite- Put the resulting 
cdclient.sqlitein the res folder:res/cdclient.sqlite 
 - Put the resulting 
 
Environmental Variables
Please Reference app/settings_exmaple.py to see all the variables
- Required:
- APP_SECRET_KEY (Must be provided)
 - APP_DATABASE_URI (Must be provided)
 
 - Everything else is optional and has defaults
 
Manual
- Install 
imagemagickorlibmagickwand-devfor dds-to-png conversion - Copy 
app/settings_exmaple.pytoapp/settings.pyand adjust the settings you would like.- Provide 
APP_SECRET_KEYandAPP_DATABASE_URIinapp/settings.py 
 - Provide 
 - app/luclient must contian a copy of an unpacked client
- you only need 
res/andlocale/from the client, but dropping the whole client in there won't hurt 
 - you only need 
 - Use 
fdb_to_sqlite.pyin lcdr's utilities onres/cdclient.fdbin the unpacked client to convert the client database tocdclient.sqlite- Put the resulting 
cdclient.sqlitein the res folder:res/cdclient.sqlite 
 - Put the resulting 
 - unzip 
res/brickdb.zipin-place- you should have new folders and files in the following places:
res/Assemblies/../..with a bunch of sub foldersres/Primitives/../..with a bunch of sub foldersres/info.xmlres/Materials.xml
 
 - you should have new folders and files in the following places:
 - Run:
pip install -r requirements.txtpip install gunicornflask db upgradegunicorn -b :8000 -w 4 wsgi:app- Preferably, you want to setup a systemd service or something to keey this running
 
 
Development
Please use Editor Config
flask runto run local dev server
					Languages
				
				
								
								
									Python
								
								59.5%
							
						
							
								
								
									Jinja
								
								35.7%
							
						
							
								
								
									HTML
								
								2.8%
							
						
							
								
								
									JavaScript
								
								0.9%
							
						
							
								
								
									SCSS
								
								0.5%
							
						
							
								
								
									Other
								
								0.5%
							
						
					