[Seaside] Front-End developer coordination

jtuchel at objektfabrik.de jtuchel at objektfabrik.de
Tue May 28 06:18:23 UTC 2019


Am 27.05.19 um 23:10 schrieb Jupiter Jones:
> Hi Bruno,
>
>> I never did what you mention but it seems a lot of work.
>
>
> Then browse to the page and save as web archive, or open a terminal 
> and use wget:
>
> wget -r -l1 http://localhost:8080/MySeasideSite
>
> …and you’ll get a local static version of the site for the CSS 
> developer to work with. Note: there are many wget options that can 
> help depending on how your site is configured so it’s definitely worth 
> finding one that works for you.
>
I'd be interested in how this works for pages/components other than your 
typical login screen? How do you modify session state in order to 
navigate the calls/answers to download a static version of a page in the 
middle of your app? The only Way I can think of here is to have some 
mechanism to navigate the app to a certain point (Parasol?, manually?) 
and then replicate your _s and _k to your wget.


> All WAFileLibrary files will be in their appropriate relative 
> locations (ie. 
> ./files/SomeWAFileLibrary/<libraryRelativePathAndFileName>) so the 
> front-end dev can correctly refer to them if required.
>
> I get the css dev to create all their files in the location:
>
> <siteRoot>/files/< MyFileLibraryName>/
>
> That way, the css dev can use whatever directory structure they are 
> comfortable with and we can upload them to a WAFileMetadataLibrary using:
>
> MyFileLibraryName recursivelyAddAllFilesIn: 
> ‘<pathToSiteRoot>/files/MyFileLibraryName’
>
> …and it should be ready to go.
>
>> /*
>> /You do not want to mess with WAFileLibrary in that development 
>> workflow.../
>> */
>
> This is in the context of CSS development. The front-end dev could be 
> testing minor changes 10 times a minute and if they need to upload the 
> CSS files to a FileLibrary each time - a minutes work becomes an hour.

Hmmm. It shouldn't be too hard to make some handler in a Smalltalk image 
that accepts uploads and compiles to a WAFileLibrary. Or you could just 
have a directory somewhere accessible for uplads and a button in your 
image that loads and recompiles all files from there. This import of 
Strings to WAFileLibrary methods take about a blink of an eye rather 
than (an) hour(s)...?


>
> Obviously the best solution is for the css dev to run a local web 
> server, and also a local Pharo/gemstone seaside server (ie. a copy of 
> the production setup.) This way they can browse the working site to 
> test their work. In this case, their web server should be serving 
> their css and resources directly from 
> <siteRoot>/files/< MyFileLibraryName>/ - exactly how it will be in 
> production.

I disagree, but would be interested in reasons for that. My experience 
from real-world projects is limited here, so I would like to learn from 
yours.


>
> Once the css dev delivers you a finished version of the files, upload 
> them to your WAFileMetadataLibrary for distribution and testing. Once 
> it moves into production, publish the FileLibrary to disk and serve 
> them via the HTTP server.

You can, of course, skip the File Library Stuff completely if you wish, 
either for all stages of your projects or only some. Web Servers liek 
nginx and Apache offer a rich set of options for such setups.


Joachim


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/seaside/attachments/20190528/94259705/attachment-0001.html>


More information about the seaside mailing list