Skip to content
forked from cp6/my-idlers

Web app for displaying, organizing and storing information about servers (VPS), shared hosting and domains.

License

Notifications You must be signed in to change notification settings

ariakeumi/my-idlers

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My idlers

A web app for displaying, organizing and storing information about servers (VPS), shared & reseller hosting, domains, DNS and misc services.

Despite what the name infers this self hosted web app isn't just for storing idling server information. By using a YABs output you can get disk & network speed values along with GeekBench 5 scores to do easier comparing and sorting.

Generic badge Generic badge Generic badge Generic badge

V2 notes

V2 build is a complete overhaul of My idlers with the project being moved onto the Laravel framework. This will simplify development and most of the features from the original build will be present in V2.

Using Laravel will bring in an API endpoint and the possibilities to show servers publicly with certain parameters removed.

Project sponsor

Cloud Five Limited for providing the hosting for demo installation.

2.0 changes:

Unfortunately you cannot migrate your current install to the new 2.0 version

  • Laravel framework (version 9).
  • Breeze authentication.
  • API GET for any of the CRUD data.
  • Labels (titles/desc) CRUD.
  • Misc services CRUD.
  • DNS CRUD.
  • Ip address CRUD.
  • Reseller hosting.
  • Added Operating systems to DB, Deleting and creating them now possible.
  • Make servers displayable public with config options to hide certain values.
  • Vue JS used where possible.
  • Datatables used on large tables (Locations, labels, and providers).
  • Added caching for home page and servers

Requires

  • PHP 8 (minimum, compatible with 8.1)

Features

  • Add servers
  • Add shared hosting
  • Add domains
  • Auto get IP's from hostname
  • Check up/down status
  • Get YABs data from output
  • Compare 2 servers
  • Save & view YABs output
  • Update YABs disk & network results
  • Next due date system
  • Multi currency compatibility
  • Multi payment-term compatibility
  • Pre-defined operating systems
  • Assign labels
  • Assign server type (KVM, OVZ, LXC & dedi)
  • Easy to edit values

Install

  • Run git clone https://github.com/cp6/my-idlers.git into your directory of choice
  • Run composer install
  • Run cp .env.example .env
  • Edit (If needed) MySQL details in .env
  • Run php artisan key:generate
  • Run php artisan make:database my_idlers to create database
  • Run php artisan migrate:fresh --seed to create tables and seed data
  • Run php artisan serve

Run using Docker

docker run \
  -p 8000:8000\
  -e APP_URL=https://... \
  -e DB_HOST=... \
  -e DB_DATABASE=... \
  -e DB_USERNAME=... \
  -e DB_PASSWORD=... \
  ghcr.io/m3nu/my-idlers:latest  # TODO: adjust after official image is set up!
docker exec ... php artisan migrate:fresh --seed --force  # Set up database one time

API endpoints

For GET requests the header must have Accept: application/json and your API token (found at /account)

Authorization : Bearer API_TOKEN_HERE

All API requests must be appended with api/ e.g mydomain.com/api/servers/gYk8J0a7

GET request:

dns/

dns/{id}

domains/

domains/{id}

servers

servers/{id}

labels/

labels/{id}

locations/

locations/{id}

misc/

misc/{id}

networkSpeeds/

networkSpeeds/{id}

os/

os/{id}

pricing/

pricing/{id}

providers/

providers/{id}

reseller/

reseller/{id}

settings/

shared/

shared/{id}

Notes

Public viewable listings

If enabled the public viewable table for your server listings is at /servers/public You can configure what you want viewable at /settings

Due date / due soon

This is simply just a reminder. If the homepage is requested (viewed) when a service is over due date it will get reset to plus the term from the old due date.

E.g if the term is a month then the due date gets updated to be 1 month from the old due date.

Supporting YABS commands:

curl -sL yabs.sh | bash

or

curl -sL yabs.sh | bash -s -- -r

Make sure YABs output starts at the first line which is:

# ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #

Screenshots for v2

My idlers screenshot1

My idlers screenshot2

My idlers screenshot3

My idlers screenshot4

My idlers screenshot5

My idlers screenshot6

My idlers screenshot7

My idlers screenshot8

About

Web app for displaying, organizing and storing information about servers (VPS), shared hosting and domains.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Blade 55.8%
  • PHP 43.8%
  • Other 0.4%