Note - PLEASE VISIT https://www.shortto.com/codang to try the working app.
An app to practice problems. Using codechef API
- Get problems listed by tags
- list info about each problem
- Select tags by categories
- Logged in user can add personal tags
- (ftr) each problem has own page
- (ftr) get profile page
- (ftr) todo lists
- (ftr) submit problem
- Understand API
- Plan Functions
- Make Relations
- 10 Iterations for above two
- Reconfirm and Normalise DBMS
- Fetch full DBMS paralelly
- dump dbms schema
- Make and check all routes iteratively parallely
- work on frontend iteratively parallely
- frontend -> oauth, rules, simple to advanced iteration, extra features from api
- dump server setup
- deploy on azure
- try deploy all azure, or deploy fe to netlify and add a backend not live try between 3pm-9pm alert in fe
- Download all prereqs like node vue git php composer(with php) nuxt etc etc etc
- Install nginx
- Install php-fpm php-xml php-mbstring
- Add a file in /etc/nginx/sites-available/ -> codetrophs.com
- In codetrophs.com make php socket 7.2 and root as ~/Documents/codetrophs 4b. Add ln -S to that in sites-enabled
- chown -R $USER:$USER in codetrophs directory
- test and restart by sudo nginx -t and sudo service nginx restart
- Install postgresql and postgresql-contrib
- Change to user and start postgres by -> 1.(sudo -i -u postgres) 2.(psql) (Exit by typing \q and then exit)
- Add more users to postgres and work in their databases only
- download composer file and move its bin to /usr/local/bin
- composer is used to install slim/slim and slim/psr7 11b. make index.php in public folder and write api routes
- Copy web server settings to nginx from slim site and change port for php-fpm in www.conf or something at /etc/php/7.2/fpm/pool.d by doing listen=9000;
- install php-pgsql, activate in etc/php/7.2/[cli|fpm]/php.ini and then connect with dbms 13b. Also installed php cs fixer extension and composer in directory.
- all nginx, php7.2-fpm, postgresql services should be running. nginx default server can point to your frontend or you can have routes for it if you want to host multiple apps. No need to start php server as things get routed to fmp server automatically which I have set to be running at 9000.
- Also I used postman and its desktop agent for backend requests.
- requests from php made with curl libcurl3 libcurl3-dev php7.2-curl OR libcurl4 packages and restart fpm and check in phpinfo() if curl section appears