diff --git a/README.md b/README.md index 1a952e0..6b6764e 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ ![logo](https://github.com/experius/SeoSnap/raw/master/assets/logo.png) +#SeoSnap Beta + Setup for the whole seosnap stack including dashboard, cache server and cache warmer used for prerendering and full page caching PWA's. @@ -13,6 +15,12 @@ git clone --recursive git@github.com:experius/SeoSnap.git ``` docker-compose up --build -d && docker-compose down ``` +Wait 5 seconds and then build again +``` +docker-compose up --build +``` + +Everything should run now # Usage * Dashboard: http://127.0.0.1:8080/ (default login: snaptron/Sn@ptron1337) @@ -28,4 +36,25 @@ Cache directory ./cache Make sure you have created a website via dashboard http://127.0.0.1:8080/seosnap/website/add/ ``` docker-compose run cachewarmer -``` \ No newline at end of file +``` + +## Nginx + +Check the nginx.conf in the example folder + + +# How it works + +![diagram](https://github.com/experius/SeoSnap/raw/master/assets/diagram.png) + +### Dashboard +In the dashboard you add the website url along with the website sitemap that you want to make 'SeoSnaps' off. + +### Crawler +When the crawler is started it connects with the dashboard api. It uses scrapy to crawl the sitemap. The scrapy results are send to the administration/dashboard. Scrapy requests are send to the cache server. In a similar way that you would do a request to rendertron. + +### Cache Server +The cache server is a simple file caching server. If a file exist with the content of the page it serves the html from the file. If not, it renders the requested url with rendertron and saves the html output in a file. To refresh the cache the cache-warmer uses PUT requests instead of GET. This will force update from the cache file. + +# Build with +![diagram](https://github.com/experius/SeoSnap/raw/master/assets/software.png) \ No newline at end of file diff --git a/assets/diagram.png b/assets/diagram.png new file mode 100644 index 0000000..49ff613 Binary files /dev/null and b/assets/diagram.png differ diff --git a/assets/software.png b/assets/software.png new file mode 100644 index 0000000..9f36fd7 Binary files /dev/null and b/assets/software.png differ