Can hosted GitHub Pages websites accept file uploads? - github-pages

I would like to create a simple website that accepts a text file upload for a small project that parses the text. Is this possible to do with GitHub Pages? I haven't found anything that addresses this functionality so I am wondering if it is possible or not.

As seen in this issue, there is no server side configuration or execution with GitHub Pages, so no.
The only workaround is rafrex/spa-github-pages: Single Page Apps for GitHub Pages, a lightweight solution for deploying single page apps with GitHub Pages. You can easily deploy a React single page app with React Router <BrowserRouter />.
But that might not include what you are looking for.

Related

Whats a good pattern for a web-application for serving files?

I am working on an angular Web-Application where it's possible to view pdf-files in a pdf-viewer in the browser.
The Web-Application is also consuming a REST-Service in Django.
In the Database the information of the pdf-files is stored. The Web-App is calling the REST-API to check where the files are stored.
As I am still in the Proof-Of-Concept Phase of the project, the PDF-Files are currently stored in the assets folder of the angular web, which of course is not what I want in the end.
When the Files or the Directories change, the Database should be updated automatically (or via a trigger in the app).
I have two questions:
Is there an obvious way to serve the files in this combination? i.e. an apache server? I imagine there are built in solutions in dedicated file servers to detect changes of the watched directory.
For a partly solution would it be reasonable to write a script on the django site, which does the file-serving, the updating and also providing the REST-API?

Allow large file upload from browser while navigating to other page

I'm building a website with Django 1.11 with a fairly simple javascript/html/css part (no framework like Vuejs). I have page reload on each navigation which is fine for my use case.
For convenience, I serve my website from App Engine Standard and it's going well so far. Now, I need my user to be able to upload files (up to 300MB size). Due to App Engine's limitation on request size (32MB), I'm using signed urls so I can send these files directly from my client's Javascript to Cloud Storage.
Due to the size of the files, the upload may take some time, but I can't seem to navigate to another page since it may cancel the upload. I understand that for a case like this a client app like single-page app in Vuejs for example would be appropriate but is there a way to achieve this with my current setup without rewriting my whole website (with possibly Vuejs and Django REST API)?
Any suggestions would be much appreciated.

Sitecore Basics

I am quite new to Sitecore WCM and have been doing a lot of research and readings. Could someone please help me to clarify the following
basics of Sitecore?
I've a number of ASP.net web applications. If I convert the project to Sitecore project will it just work magically?
If I want to create new site, do I need to manually create a new site in IIS or Sitecore does it when I publish?
Are there any online training videos available, could not find a single (except Sitecore marketing demo).
If we have MVC and Web forms applications, is it possible to migrate to Sitecore?
First off, welcome to Sitecore!
Regarding your questions:
I've a number of ASP.net web application. If I convert the project to Sitecore project will it just work magically?
A Sitecore website is an asp.net web application. It just happens to start off with databases, DLLs, and web.config entries that are ready for you to get the CMS up and running. Standard .NET code works just as normal. However, part of what happens when you first setup your site as a Sitecore website is that Sitecore starts intercepting requests for pages and attempts to bind them to pages in the content tree. If a content item doesn't exist with the matching path, it won't return.
This is particularly important if you plan on just standing up your existing pages alongside new Sitecore pages. Your URLs won't initially work, and you'll have to do some configuration to get them to resolve and be ignored by Sitecore.
However, if you do NOT want to put your pages alongside the site and instead integrate them into the Sitecore solution as content items, you'll likely need to re-architect your solution. Sitecore uses 'sublayouts' (ASCX) for different components on a page, and these need to be represented in the database and the code base, and then added to content items as part of their presentation details. This can be easy, if your site is already heavily architected towards components, but sometimes you'll need to create a bunch of ASCX to represent your different pages.
Your business logic should not be affected, unless you decide to make changes to start leveraging configurations in the Sitecore database or accessing properties of the current context item. In this manner, your code should execute "out-of-the-box".
If I want to create new site do I need to manually create a new site in IIS or Sitecore does it when I publish?
Sitecore doesn't "create" anything when it publishes. Publishing is really just an action of taking the content approved in the Master database and pushing it out to the Web database for the selected target. Your IIS sites, and anything else you need for your application, you just setup as you normally would.
Are there any online training videos available, could not find a single (except Sitecore marketing demo).
I highly recommend taking the developer training that Sitecore provides. It's a very good introduction to the concepts, especially if you aren't working with folks who have a lot of Sitecore expertise. It also allows you to meet some other folks who are getting into Sitecore and you can help each other out.
If we have MVC and Web forms applications, is it possible to migrate to Sitecore?
Sitecore is a .NET application at its core, and web forms work. MVC is also supported with the most recent versions of Sitecore.
I know this question is a little old, and already answered, but I think I have some info to add.
I've a number of ASP.net web application. If I convert the project to Sitecore project will it just work magically?
Nothing is magic. If you want the content management or marketing aspects of Sitecore, plan on rebuilding your site(s) within Sitecore.
If I want to create new site do I need to manually create a new site in IIS or Sitecore does it when I publish?
Sitecore is an IIS site. When you install Sitecore, it creates an IIS site along with at least 3 databases (core, master, & web). Sitecore can have multiple subsites, but they're all built within the single IIS site that is Sitecore.
Are there any online training videos available, could not find a single (except sitecore marketing demo).
These videos may not have existed when this question was originally answered...so here's a few I found useful.
Sitecore Training: Developer Fundamental Series - Creating Visual Studio Project for Sitecore
Sitecore MVC - Getting Started (Part 1)
Sitecore MVC -- View Renderings, #Html().Sitecore, and Models
If we have MVC and Web forms applications, is it possible to migrate to site core?
Webforms and MVC are both supported in Sitecore. You will be thinking of both of them in a different way whenever you are rebuilding them in Sitecore though.
1) You can create blank solution and add existing items like sublayout, css , javascript etc and obviously need to change some codebehind. But sitecore has different database structure compared to normal web applications , so you will need to create template, items etc.
2) For sitecore , you will need to create website in IIS and make entry in your host file as follows:
local path C:\Windows\System32\drivers\etc find hosts file and in that file add entry as
127.0.0.1 yoursitename.com
3) For demo video you can try Sitecore channel videos for basic sitecore learning from Youtube.

How to publish .php page instead of .html at github to demo some php content?

I am looking at the following demo - http://blueimp.github.com/jQuery-File-Upload/
To my understanding in the demo, php files are being served from github which means php content can be served / run from github.
I understand the process to publish html content from code hosted at github via this link - http://help.github.com/pages/ I am just curious to know how can I show a .php page as a demo, similar to what is done in blueimp above.
I tried similar thing at http://synechron.github.com/index2.php but instead of displaying in the browser window the page gets downloaded in Google chrome and in IE9 index.html is displayed.
Github Pages is not a full-featured web host. It will not execute PHP, or any other arbitrary code.
No, you can’t.
Github Pages let you serve web client content (HTML, Javascript, CSS) without the need of owning and maintaining a web server. You can make sub folders, map your domain into it. Use tools such as Jekyll or Hugo with some basic programming skills, you can make your site work as good as an CMS.
However, it does not allow you to use any backend technology to process and manipulate data/logic.
So, PHP is not possible.

HTML5 Offline storage web framework

I am looking for a web app framework which can automatically generate an HTML5 offline storage based app, so while the users become disconnected they still can view the data which normally is stored on a server
Also currently I am using Django and it would be great if there was a framework which could pull data from Django and present that as an offline app.
From the related questions suggested by stackoverflow, while writing this question, I found one interesting link mentioning that GWT has such functionality, I would like to know more about that if possible and if it can generate an HTML5 offline app
Thanks in Advance
Rather than server-side frameworks, you should be taking a look at JavaScript frameworks.
Dojo Storage will transparently select between providers such as Google Gears, Adobe AIR or plain old HTML 5 local storage. Dojo 1.5 - dojox.storage: http://dojotoolkit.org/api/1.5/dojox/storage
There's also jQuery local storage: http://plugins.jquery.com/project/saveit
... or jStorage, which can act as a storage plugin for jQuery, Prototype or MooTools: http://www.jstorage.info/
With any of these, you should be able to use a quick little AJAX call to pull (JSON perhaps) data from your server and use one of these tools to help minimise your storage code.
You're talking about a standalone app, not a django app.
This can be done with javascript (jQuery, Sproutcore, JavascriptMVC, Pyjamas ...) or Adobe AIR, or...
Pulling data from Django is just a matter of setting up a syncing method, most probably using JSON, to fill up the browser local storage. So this is not django-specific at all.
If you want a standalone django app, this can be done if you bundle in a python desktop app django with a built-in server, that's another question
You could suggest the users to create web apps or use google gears instead... I don't know if this will fill the question, but, i'm in the same way. However, I'm developing an governamental solution who will run only for some kind of people, so, I can have a few control about the user's environment... All you need to do is to use jquery to detect if user has a live connection, or offer to the users a 'preferences' page where you define the behavior of the page itself...
Some info about offline cache: http://diveintohtml5.ep.io/offline.html
PS.: In another post in stackoverflow, I 've found another question: html5 offline caching with php driven sites... The last Post said:
HTML5 offline caching does not work to make your pages interact; it works only to make a
particular page available offline. Basically, it works on a URL-by-URL basis. If you
absolutely need offline functionality, you will be forced to make it work in JS.
Also, make sure your manifest includes all resources used by all pages.
Hope this helps!
Hope it helps!!