Applications: Difference between revisions

Created page with "Applications are like web pages but more complicated. If you would like to run an application please ask first :3 == What is an Application == thumb|247x247px|This guy Anything that need a daemon basically. == Guidelines == * Keep memory use '''Down''' * Keep CPU time '''Down''' * Avoid running anything that would use a '''Silly''' amount of system/natural resources * Your application may be better suited for being run as a part of '''The''' Incr..."
 
No edit summary
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Applications are like web pages but more complicated. If you would like to run an application please ask first :3
'''[[apple|Appl]]<nowiki/>ications''' are like [[Web Hosting|web pages]] but more complicated. If you would like to run an application please ask first :3


== What is an Application ==
== What is an Application ==
Line 10: Line 10:
* Keep CPU time '''Down'''
* Keep CPU time '''Down'''
* Avoid running anything that would use a '''Silly''' amount of system/natural resources
* Avoid running anything that would use a '''Silly''' amount of system/natural resources
* Your application may be better suited for being run as a part of '''The''' [[Incredible Pronounmail Suite of Interesting Applications]].
* Your application may be better suited for being run as a part of [[The Pronounmail Interesting Suite of Software]].
* Please have the source code for your application available somewhere on the server under a '''Reasonable''' license (the AGPL is always a good choice)


== Systemd ==
== Systemd ==
Line 22: Line 23:
  Description=My cool application
  Description=My cool application
  After=network.target
  After=network.target
Before=nextcloud-web.service
   
   
  [Service]
  [Service]
Line 39: Line 39:


== Networking ==
== Networking ==
Please please please have your application listen over a Unix Domain Socket (where the socket is a filesystem node) over a Internet domain socket (where the socket is an IP address and a port number).  
[https://music.apple.com/gb/album/please-please-please/153432152?i=153432312 Please please please] have your application listen over a Unix Domain Socket (where the socket is a filesystem node) instead of an Internet domain socket (where the socket is an IP address and a port number).  


== Database(s) ==
== Database(s) ==
We have a PosgreSQL instance that you may plug your things into. Ping leah and she'll set up a database and account for you.
We have a PosgreSQL instance that you may plug your things into. [[Disk Horse|Ping]] [[User:leah|leah]] and she'll set up a database and account for you.


You can also use SQLite or whatever
You can also use SQLite or whatever


== Webserver ==
== Webserver ==
Your application needs to be reverse-proxied through the webserver in order to appear on pronounmail.com.
Your application needs to be reverse-proxied through the webserver in order to appear on [[pronounmail.com]].


All webserver configuration must currently pass through leah. Please ask her nicely if you need things to be changéd.
All webserver configuration must currently pass through [[User:leah|leah]]. Please ask her nicely if you need things to be changèd.


== Alternatively ==
== Alternatively ==
If you're not expecting too much traffic, it might be wise to write your thing with [[CGI]]. Also, we have [[PHP]], which works quite well.
If you're not expecting too much traffic, it might be wise to write your thing with [[CGI]]. We also have [[PHP]], which works quite well.
 
The cops don't want you to know this, but you can make a static website appear dynamic by just rebuilding it every few minutes. You can use a systemd timer to do this automatically ([[please]] don't rebuild it too often or i'll [[killing|kill]] you 💔).