Git Product home page Git Product logo

ponygala's Introduction

PonyGala

This one is my beloved web app. It implements my view to how online photogallaries should be built. So ofcourse I myself use this webengine for my biggest project Big DigitalArt Gallery.

Functionality

The current version you see here, is completely rewritten system I supporting and evolving now.

  • Now it uses fast MySQL database, with improved tables structure. All the previews and full versions of arts are shipped by dA engine, so you are not dependent from performance of my server. My engine now only stores unique id of arts, and it's binding to my categories.
  • The category previews are now generated with modern CSS and not stored to my server slow HDD.
  • The statistics got better with more intelligent IP filters, and has visualized graphs for easy analytic.
  • The deviantArt integrator was also improved, so it stores found art ids from given user's subscriptions directly into db while reading it, but all this new data marked with special category, invisible for regular users.
  • The new Twitter integrator powered with twitteroauth is fast and clean, able to parse tweets from designited list, find and implement arts inside them, and store it to my own universal structure, verified by time.
  • If you’re logged in with master password, you will see this storage category, and special 'sticky' toolbar, allowing you to easily manage individual arts or whole groups: delete or move them to normal (visible) categories.
  • And finally I rewrote gallery's self-repair system with full dA API integration, so it always able to detect and fix any differences between real art’s properties (title, author, source links) on devianArt and your gallery instance.

Config

To make this app work, create config.php in the root folder, and fill it like this:

<?php
/* MainConfig */
$master = 'master0pass';
$db_server = 'db_doamin';
$db_database = 'db_name';
$db_user = 'db_user';
$db_password= 'db_user_pass';
$redirect_url = 'https://your.domain/Ponygala/mods/dA_add-art.php';
$redirect_url_t = 'https://your.domain/Ponygala/mods/tW_add-art.php';
$da_client = '0000';                                                        //a.k.a your deviantArt's app client_id
$da_secret = '000000000000000000000000000000';                              //a.k.a your deviantArt's app client_secret
$tw_api_key = '0000000000000000000000000';                                  //a.k.a your Twitter's app oauth_consumer_key
$tw_api_secret = '000000000000000000000000000000000000000000';              //a.k.a your Twitter's app oauth_consumer_secret
?>

Don't forget, that your redirect_url should be publicaly avalable and same here, in your deviantArt's Twitter's apps settings!

History

I wrote first version back in 2012. At that moment it was just web interface for searching through several of my folders, holding downloaded full versions of the best fanarts from the web. When scanned, it used GD-PHP lib to generate previews and store them on special sub-folders. This was pretty slow on work (because of 7200RPM mechanical HDD), but easy to write and understand. Unfortunately I didn't backed up this version of app, thou Some parts of it you can be found in commit's df2d5bd '_tmp-old' folder

The second version, didn't have to scan my HDD for art’s files, because it finally got first DB: small sqlite file, holding direct links to full arts on dA, and virtual categories, which replaced my folders names in this role. But as on previous version it still used GD to generate thumbnails of arts and categories, and store them on my server hard drive. It also get first version of devianArt API integration script, able to parse my account's subscriptions and dynamically insert them into forms in gallary’s control panel. One of this old versions you can find in this commit df2d5bd.

Screenshots

The main page Search mode Date filter Main category view and management gallary self-repair The statistics

ponygala's People

Contributors

scadl avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.