From 14c0430850721ab4608be91f68bfb13248afa768 Mon Sep 17 00:00:00 2001 From: nebula Date: Fri, 21 Mar 2025 05:32:26 +0000 Subject: [PATCH] init repository --- generate.py | 126 +++++++++++++++++++++++++ md/BasinRange.md | 56 ++++++++++++ md/Bisti.md | 113 +++++++++++++++++++++++ md/Caballo.md | 71 +++++++++++++++ md/Rubies.md | 142 +++++++++++++++++++++++++++++ metadata.json | 232 +++++++++++++++++++++++++++++++++++++++++++++++ templates/main | 52 +++++++++++ templates/place | 143 +++++++++++++++++++++++++++++ 8 files changed, 935 insertions(+) create mode 100644 generate.py create mode 100644 md/BasinRange.md create mode 100644 md/Bisti.md create mode 100644 md/Caballo.md create mode 100644 md/Rubies.md create mode 100644 metadata.json create mode 100644 templates/main create mode 100644 templates/place diff --git a/generate.py b/generate.py new file mode 100644 index 0000000..0b4937a --- /dev/null +++ b/generate.py @@ -0,0 +1,126 @@ +from sys import argv +import subprocess +from PIL import Image +from jinja2 import Environment, FileSystemLoader +from markdown import markdown +from glob import glob +from json import dump, dumps, load +from os import path +import re + +numbers = re.compile("[0-9]+") +out_dir = "/var/www/html/" +base_url = "https://helixnebula.space/" +template_environment = Environment( + loader=FileSystemLoader("templates/")) + +with open("metadata.json", "r") as f: + metadata = load(f) + +for placename in metadata.keys(): + read_path = f"{out_dir}{placename}/" + write_path = f"{out_dir}photos.json" + photos = [ + path.basename(photo).split('/')[-1] for photo in + glob(read_path + "*") + ] + try: + photos.remove("index.html") + except ValueError: + pass + metadata[placename]["count"] = len(photos) + metadata[placename]["photos"] = photos + metadata[placename]["photos"].sort(key=lambda path: int(numbers.search(path).group(0))) +with open(write_path, "w") as f: + dump(metadata, f) + +def covers(overwrite=False): + print("running covers") + for placename, info in metadata.items(): + read_path = f"{out_dir}{placename}/{info['cover']}" + write_path = f"{out_dir}cover/cover_{info['cover']}" + if not overwrite and path.exists(write_path): + continue + command = ["convert", read_path, "-strip", "-interlace", "Plane", "-gaussian-blur", "0.05", + "-auto-orient", "-resize", "700x525>", "-quality", "80%", write_path] + subprocess.run(command) + +def thumbnails(overwrite=False): + print("running thumbnails") + for placename in metadata.keys(): + for photo in metadata[placename]["photos"]: + read_path = f"{out_dir}{placename}/{photo}" + write_path = f"{out_dir}thumbnail/thumbnail_{photo}" + if not overwrite and path.exists(write_path): + continue + command = ["convert", read_path, "-strip", "-interlace", "Plane", "-gaussian-blur", "0.05", + "-auto-orient", "-resize", "300x200>", "-quality", "65%", write_path] + subprocess.run(command) + +def compressed(overwrite=False): + print("running compressed") + for placename in metadata.keys(): + for photo in metadata[placename]["photos"]: + read_path = f"{out_dir}{placename}/{photo}" + write_path = f"{out_dir}compressed/compressed_{photo}" + if not overwrite and path.exists(write_path): + continue + command = ["convert", read_path, "-auto-orient", "-strip", "-resize", "1200>", "-quality", "90%", write_path] + subprocess.run(command) + +def render_index(): + template = template_environment.get_template("main") + data = {key: value for key, value in sorted(metadata.items(), key=lambda item: item[1]['title'])} + photo_counts = {placename: metadata[placename]["count"] for placename in metadata.keys()} + total_count = 0 + for _, info in metadata.items(): + total_count = info["count"] + total_count + with open(out_dir + "index.html", "w") as f: + f.write(template.render({ + "metadata": data, + "album_count": len(metadata.keys()), + "photo_counts": photo_counts, + "total_count": total_count + })) + +def render_places(): + template = template_environment.get_template("place") + for placename, info in metadata.items(): + working_path = out_dir + placename + photos = metadata[placename]["photos"] + photos_json = dumps(photos) + count = len(photos) + widths = [] + heights = [] + for photo in photos: + photo_path = out_dir + "thumbnail/thumbnail_" + photo + img = Image.open(photo_path) + width, height = img.size + widths.append(width) + heights.append(height) + photo_specs = zip(widths, heights, photos) + try: + with open("md/" + placename + ".md", "r") as f: + md = markdown(f.read()) + except FileNotFoundError: + md = "

Blog Work In Progress

" + with open(working_path + "/index.html", "w") as f: + f.write(template.render({ + "count": count, + "placename": placename, + "info": info, + "markdown": md, + "photos": photo_specs, + "photos_json": photos_json + })) + +if __name__ == "__main__": + try: + overwrite = "overwrite" in argv + covers(overwrite=overwrite) + thumbnails(overwrite=overwrite) + compressed(overwrite=overwrite) + except KeyboardInterrupt: + exit() + render_index() + render_places() diff --git a/md/BasinRange.md b/md/BasinRange.md new file mode 100644 index 0000000..7af00fe --- /dev/null +++ b/md/BasinRange.md @@ -0,0 +1,56 @@ +# A Peaceful Glimpse Into The Great Basin + +This is the Great Basin, a land of contradictions: it's flat and rugged, hot and +cold, forest, marsh, and desert. The valleys, mountains, natural lakes, playas, +salt flats, volcanic activity, and more combine to form a place that, in my +opinion, is indescribably beautiful and fun to explore. It's sparsely populated, +with vast stretches of untrammeled wilderness. Seemingly in the middle of +nowhere, one can find many unpaved roads and trails to explore, however you will +not find very many developed hiking trails outside of the more popular areas. I +have hiked on jeep roads my car wasn't hardy enough to traverse. + +A little background on what basin and range topography means goes a long way in +understanding and appreciating the landscapes of Nevada and western Utah. [This +very informative video](https://www.youtube.com/watch?v=Owjt_WJKrBo) helps +illustrate how these lands formed, I highly recommend watching it. [The +Wikipedia page for The Great Basin](https://en.wikipedia.org/wiki/Great_Basin) +is another great place to learn more. Finally, [this page at +birdandhike.com](https://www.birdandhike.com/Areas/BasinRange_Area/_BasinRange_Area.htm) +is honestly a better overview of this place than I can give. But, I did take +some pictures too! + +Entering from the east along Mail Summit Road raises you from the valley into +the pinyon/juniper forests of the Seaman mountain range. Following the road will +bring you down into the vast Coal Valley, a dry, sagebrush-laden basin. The +valleys in the monument are pristine, with little variations like hills or +ridges between the mountain ranges. There are 3 such named ranges that make up +the monument, the eastern Seaman range, the western Quinn Canyon range, and the +central Golden Gate range, with Coal Valley to it's east and Garden Valley to +the west. The Quinn Canyon range is the highest, and features snowy caps in my +photos. + +Thanks to the [map provided by Bird & +Hike](https://www.birdandhike.com/Hike/BasinRange/Camps-BR/_BR-Camps/_BR_camps.htm), +I found some scenic campsites, and one that was not on this map. My favorite +was the "GV Crags" site, with a cool rock outcropping and a trail that leads up +to the Golden Gate range (however it doesn't go to any high peaks, but does go +high enough to reach the forest) + +Drives through the valleys, along the bases of the mountain ranges, and nights +under the stars here are great. It's very peaceful and I saw very very few other +people here. There are a couple of small ranches within the monument's borders, +but they do not intrude on the views or solitude. Of particular note would be +[City by Michael Heizer](http://www.tripleaughtfoundation.org/), which is not +available outside of a scheduled tour, but it is located here. + +Also present in the monument are petroglyphs, but ancient rock art kind of gives +me the creeps when I look at it, so I did not explore those areas. The Bird & +Hike website goes into details about those. + +This is an area that begs further exploration on my part and I will be returning +when I have the time. I would like to do more hiking, and take more photos in +the forests. My first visits, I did not stray terribly far from my campsites, +and I will do more exploring on foot next time. Enjoy the photos! And don't +forget to check out [the overview on Bird & +Hike](https://www.birdandhike.com/Hike/BasinRange/_B-R_Over/_BasinRange_Over.htm) +if you want to see and learn more. diff --git a/md/Bisti.md b/md/Bisti.md new file mode 100644 index 0000000..10316c7 --- /dev/null +++ b/md/Bisti.md @@ -0,0 +1,113 @@ +# The Looney Tunes Badlands + +The Bisti is, without a doubt, the single weirdest place I have ever been in +my life. It turned my understanding of how natural formations came to be right +on its metaphorical head. It is so bewildering that it exceeds description, +but I will try anyways. + +The BLM-managed Bisti/De-Na-Zin wilderness, as the name implies, has two named +sections. The area these two wilderness areas cover is quite large, and trekking to +the heart of the region and back is probably not feasible in one day. Both are +known for absurd formations and an abundance of exposed petrified wood. It's +extremely dry, and is prone to large amounts of blowing dust in the spring. + + +The Bisti has no developed hiking trails, nor are you able to follow anyone +else's footprints except on the occasional sandy areas. I found some vague +descriptions online of what direction to try going first, but ended up feeling +like the coolest stuff I found was not there. It is very much a choose your +own path adventure. I didn't take any GPS tracks to share with you. +Admittedly, the view from the parking area is not impressive. None of the +weird stuff is there to see unless you commit to really hiking in. But it's +worth it. + +On my first trip, I packed my things for an overnight backpacking adventure, +and set into the wilderness in the early afternoon. The first encounter is a +fairly large "plain" that is surrounded by small hills. Its inviting to look +at, and suggests that one can use it as a little highway into the wilds. I +first headed toward some of those low hills to see what I could find. A +staircase-like arroyo winding through the large mounds was one of my first +observations. The surface of the Bisti, it's flats and it's hills, are mostly +shale. Its like clay, when packed in it is quite hard but other times, like on +hillsides, it will collapse under your step. The hard parts look smooth and +the soft parts are very pitted, almost looking like a thick gravel. This +material seems to erode easily with rainfall, making the arroyos very dramatic +in appearance. This was far from the weirdest thing I would see on this trip, +but I was already pretty enamoured. + +The shale came in hues of gray, yellow, red, and black. I'm sure the different +colors are made of different compounds (and shale may not even be the right +term for it), but I'm not a scientist. My first bewilderment of the region is +that there are many mounds, hills of various colors in close proximity. One +could be pitch black, and the one next to it would be vibrant red, and the +space between them would change colors quite abrubtly. The entirety of the +Bisti is not as dull looking as the drive to the parking area may suggest. + +The next oddity I observed was an abundance of small caves and tube-like +erosions. The Bisti is filled with pits, crevices, holes, and small caverns. +Most of them are too small to walk in, but I did find a few that I could walk +into. I wonder what formed these. I often found myself looking at things that +were obviously eroded by water, but didn't actually make any sense to me. The +pipe-like formations that went up and down seemed to defy gravity, I was +staring at things wondering what could possess water to do that. It almost +seems like the water was jetted through the ground, like there was a lot of +pressure. There is also an abundance of paths that the water cut straight +through a mass of shale, but these made sense because one could track where +the water flows horizontally. At least *some* things make sense, but a lot of +it simply did not. + +Then comes the petrified wood. Its essentially an ancient log that turned into +a rock. There were surely trees here at some point in the past, but the +petrified wood that is here is just casually sitting on the ground as if +someone just plucked them out from someplace else and just set them down +there. It's fascinating and fun to find. + +There are some deposits of pristine looking sand, perfectly rippled from the +wind. There are no dunes of it that I found, but the bottom of some bluffs and +hills would have pools of it. It looks soft, I want to run my hands through +it. + +Now, the hoodoos. And weird balancing rock formations? A lot of this stuff +looks like clay mushrooms. Some of it looks like big massess of very solid +rock sitting on thin pillars of softer looking material. The colors of the +heads and stems of these formations can be completely different. They look +like little goblins created them. Some are small, and others are sitting +well above the head and into the sky. These multicolored cliffs, rock +deposits, and hoodoos need to be seen to be understood or believed. And also, +flats between the hills with many rocks and boulders interspersed, just +sitting on the ground as if someone arranged them. + +I set up camp at the base of a shale hill. The place I decided to sleep was +not quite as extravagent as what I had seen so far or what I would see in the +morning, but it was still inviting and I enjoyed it. I cooked dinner and drank +tea. As the night went on, I noticed that it was completely silent. No sound +of insects or plants blowing in the wind of any kind. Just silence. I really +liked it. I walked out under the moonlight and drank it all in. Silence, a +great view of the night sky (as anywhere away from the cities), and plenty of +room to walk. I had a peaceful day exploring and a peaceful night +appreciating. + +In the morning, I took a new route. I found a lot of red stuff. And I do mean +*red*, very vibrantly so. I wound through the hills for a couple miles, not +finding a lot of hoodos but definitely weird caves and tunnels carved by +water. More and more weird stuff here. At this point I was heading back to my +car because i was running out of water. And then I left, not to return for +over a year. + +My second trip, I had driven there for hours, only to realize once I was +getting close that the horizons were very hazy from blowing dust. I knew it +would be a bad idea to go out but again, I packed the overnighter bag and set +out into the badlands. It was extremely windy, and dusty, and by the time i +made it a couple miles in, my eyes were irritated. I did find some cool areas +and took some good pictures though. + +Eventually I tried to set up camp, but it was a disaster. The intense wind +ripped my tent stakes out of the soft ground, and my food cooker was +collecting lots of dust into my food. I realized this was a lost cause and +packed my things up, trudged directly into the wind for two miles, and left to +go back where I came from. My eyes were filled with dirt, and I'm lucky I +didnt get some sort of eye or respritory infection. I was still happy to see +the Bisti again. + +This place is really unique, and I'm glad that I went. It is a place of +extremes, very dry, very dusty, very barren of life, very bizarre. diff --git a/md/Caballo.md b/md/Caballo.md new file mode 100644 index 0000000..579273e --- /dev/null +++ b/md/Caballo.md @@ -0,0 +1,71 @@ +# Oases in the Desert + +Before writing this, I did not know what the plural form for the word "oasis" +was. Apparently it's "oases", which I had never heard before in my life! It's +hard for me to talk about Caballo Lake without also mentioning Elephant Butte +Lake. The two are less than 20 miles apart, and are both dammed resevoirs fed +by the iconic Rio Grande. + +There is a cansus-designated place in New Mexico called Caballo, which has a +very small population. But they do have a post office! The name is shared also +by the Caballo Mountains range and Caballo Lake. As a title for this album, it +is used loosely to refer to that whole region. + +Caballo Lake State Park is a peaceful place. There are small gardens of cacti +in various spots, with picnicking, fishing, and camping areas with spectacular +views of the Caballo Mountains. In my time spent there, I saw a lot of families +enjoying themselves, fishing, grilling, and chilling out. I was camping on a +rocky shoreline of the lake, and a man was walking with his dog. His dog +excitedly ran over to my campsite to greet me, and his owner followed and we +chatted for a while. + +He was an interesting character, telling me stories of him being a +self-described con artist. He likes to sit at intersections in the nearby town +of Truth or Consequences, writing carefully phrased signs for panhandling. He +pointed out to me that he takes great care not to lie. While he may be asking +for money, he does not claim to be homeless or in danger, but he tries to +appeal to folks who do help the homeless. One time, someone gave him money and +said very sternly "this is for your dog, not for you.", and he said that he +listened to that demand. He came back later and gave me a real wooden walking +stick, colored like lapis lazuli. I still have the walking stick, though I +never preferred using it over my trekking poles. It does look quite lovely +though. + +I have enjoyed kayaking on the lake. One morning I brewed myself some tea on +the shore and enjoyed it while slowly floating about. I spent a couple days +camping in the same spot, and there was another family nearby on the lake +shore. We never talked, but we were able to see what the other was doing at +camp. They spent a lot of time fishing. After a couple days, I decided to pack +all my backpacking gear onto my kayak so i could cross the lake and camp on the +other side. I found a nice sandy alcove with cottonwood trees, bordered by some +steep bluffs that led out to the desert at the base of the mountains. I enjoyed +a night of solitude, slept in my tent, and returned to the park the next morning. + +When I got back, the family I was camping near at the park was concerned that I +had went missing. They asked if I was okay, and if I hadn't showed up earlier, +they would have asked the rangers to find me and see if I was alright. They +didn't expect me to leave like that and thought i got lost or hurt! I told them +I just wanted to camp on the other side, and they understood. They were very +kind and I appreciated that. + +When I was hanging out by Truth or Consequences, I found some unpaved roads on +my atlas that led to the east side of the Caballo Mountains, "behind" the lake. +The roads traversed southward along the valley, and then had turnouts that went +west towards the mountain range. I found a cool spot to hang out and do a +little mountain biking. I didn't go all the way to the peaks, but the views +were really nice anyways. You can see the distant Elephant Butte Lake, from a +high vantage point that made it look quite small. Sadly I did not feel like +taking a lot of pictures in this area, but I regret that and want to go back to +do more photography, and then go to the peaks. + +The east side of these mountains are where you can find the Jornada del Muerto. +It is a very dry, sometimes red-colored stretch of desert that challenged +Spanish travelers with a waterless 90 mile stretch. Along the highway south of +Engle, I found some access points where I walked the old trail and hiked up to +[Point of Rocks](https://www.nps.gov/articles/000/new-mexico-point-of-rocks.htm). +Here you can also find Spaceport America. + +The areas around Truth or Consequences and Caballo have turned into one of my +favorite regions of New Mexico. I have spent a lot of time here enjoying the +Chihuahuan Desert. I feel very welcome and comfortable there and will surely be +back in the future. diff --git a/md/Rubies.md b/md/Rubies.md new file mode 100644 index 0000000..e0310f3 --- /dev/null +++ b/md/Rubies.md @@ -0,0 +1,142 @@ +# Hell on Wheels & Heaven in the Mountains + +Picture this: a sunny, peaceful, and warm June drive into the Great Basin +desert, through valleys and surrounded by mountains, along the loneliest road +in America. Before setting out, I studied my atlas, searching for new access +roads into the wilderness. I drove east, until arriving at a small unpaved two +track leading to the Pancake mountain range. Silly name, I know, and honestly +thats what motivated me to go. + +A Kia Soul is a funny vehicle to trek the desert wilderness. Front wheel drive +with road tires gives little traction on unpaved surfaces. I was cautiously +driving down the trail, when I came to a hill. I lost traction before the +peak, forcing me to reverse. In these situations, I always went in for a second +shot at a higher speed. Momentum works wonders to get through steep or sandy +sections. + +The trail had small plants growing between where tires had worn the track. I +didn't think anything of it, they looked small and harmless. So I gave it the +gas and made it up the hill. I felt a small thump under the vehicle on my way +up, but honestly I had done worse in the past without any damage. All seemed +well...until I smelled gasoline. I stopped the car, stepped outside and could +smell it strongly. I crouched under the vehicle and saw a steady drip coming +from the fuel tank. Oops... + +I had no cell signal, and couldnt call for help. I quickly realized that my +only option was to turn around and beeline to the nearest settlement. The +closest town was Eureka, I didn't know what all was there or if anyone could +help me, but it was my only choice. It was not very close and it took a while +to get there, but the gas leak was slow enough that I made it there with at +least a quarter of a tank left. I was hoping to catch cell signal there so I +could google the nearest mechanic shop, but even the town had no cell service. + +I found a gas station on what appeared to be the main street, so I parked and +walked inside. My only hope was to ask the person working behind the counter if +there was anywhere in town to get my car fixed. She knew a guy apparently, +phoned him in and he showed up maybe ten minutes later. He crouched under my +car and told me what I already knew. But he didnt have the gear to fix it. He +needed not only a new gas tank but also a lift for the whole vehicle. He +reccomended a shop in Elko that could help me. + +I think that many city folk could not imagine how remote Great Basin +communities can be. Eureka is a town with few services and no cell signal, and +from there to Elko was....over 100 miles, with mostly untamed wilderness +between them. I tanked up at this Eureka gas station and gunned it to the +North. Honestly I was not sure how far I could go before the tank leaked out, +but I didnt really have a choice but to try. + +Thankfully the speed limit on state highway 278 was 70 MPH, which did wonders +to make me feel like I was getting there quickly. Along the way, I encountered +a vehicle going below that speed that I was not immediately able to pass. I was +in a rush and i really wanted them out of my way, but it didnt seem like that +big of a deal until I saw the sparks of a cigarette being tossed from the window +to the road. This scared the living crap out of me, because I was leaking fuel +and was about to drive right over that. Thankfully nothing bad happened, and I +was soon able to pass them and continue my...panicked drive. + +It took nearly two hours but I made it to Elko with some fuel left. It would +have been great to be able to roll right up to the mechanic and get the process +going the same day, but it was too late in the day and they closed. I went to +Wal-Mart and bought a siphon kit and small gas canister so I could suck the +fuel out of the tank to save it for the morning, but I couldnt get it to work. +I was almost out of fuel but I managed to make it to a gas station where I just +got some fresh fuel to put in the 2.5 gallon can. I then drove out past city +limits and parked in the first spot that I could sleep in the car with. The +smell of gasoline filled the car, so I set up a tent outside and slept there +instead. Fun times! + +First thing in the morning I showed up at the shop, after pouring the fuel can +into the now empty tank. Its a wild story to tell someone and they seemed a +bit...surprised at least, but they took the vehicle in and ordered the new tank +(or whatever it is they do at first). My dad found and booked me a hotel room +in Elko, so I plucked my essential gear and clothes out of the car and walked +from the shop to the hotel and checked in. I took a shower and tried to relax +for the evening. + +The next day, to pass the time, I went to the [Northeastern Nevada +Museum](https://museumelko.org/). The wildlife exhibit was awesome, but the +settler and mining history section made me feel bad for the environment and for +the natives. They at least had some pretty mineral samples on display. After +that I walked to a mexican bakery and got some sweet treats. I went back to my +hotel room and quite frankly I was bored out of my mind that night. I didn't +want to be in a hotel, I wanted to be back out in the wilds. + +The next morning, I walked back to the shop and asked if i could get more +things from my car, which was just sitting there waiting for the part to +arrive. I packed my big overnight bag with my camping essentials and about 4 +days worth of food. I then installed a ridesharing app onto my phone and +requested a drive from the shop to the nearby Ruby Mountains. But that didnt +work out...three times, the ride was declined after waiting for like 10 minutes +each. The whole time, I was waiting in the shop, and there were people around +me. Eventually I told them I was trying to pay for a ride but couldnt get one, +and someone from the shop actually offered me a ride! When he was ready, I +grabbed my bag and he drove us all the way down Lamoille Canyon and to a +trailhead. There was no cell signal in the mountains, so we agreed to meet back +at the parking lot at a specific time some days later. And from then I was +entirely on my own. + +In Elko, and in the lowlands around it, it was a warm June day, about 90F. When +I stepped out of his car into the mountain air, it was significantly cooler. I +filled my sawyer filter bottle with some cold water from a nearby stream of +snowmelt, and headed up the trail. In contrast to the desert valleys, there +were large trees, green grass, and lots of snow. I navigated the trail and +headed to higher ground. + +I met some alpine lakes and passages covered in snow. One of the lakes, +Lamoille Lake, was mostly frozen, even in late June. The higher I hiked, the +more snowy it got. The first snowy passage was actually pretty sketchy for me, +as I did not have waterproof or even warm footwear and the sides of the trail +were steep. My hiking poles were awkward to use with this much snow on the +ground, and I almost slipped downward towards a snowy slope a few times. At the +end of that was land I could more easily traverse, which made a great campsite. +But when I arrived at the segment of trail that is called Liberty Pass, the +snow cover was too much and the trail was steep. I had no snow shoes, I didnt +even bring my crampons, so I had to accept that I couldnt proceed further +without serious problems with my shoes. They kept getting wetter and colder. I +turned around and explored what I could. + +In the next days, the high of finding new mountain wilderness wore off, and +depression started setting in. I couldn't talk to anyone because I had no cell +signal, I couldn't hike higher because of my crappy shoes, and I couldn't bail +out because I didn't have my car. Sadness and embarassment from the repair +expenses, and my lack of control over the situation weighed me down. If that +wasnt bad enough, the next day, i broke my backpacking gas stove by carelessly +crossthreading the screw-in connection. I couldnt even cook a warm meal +anymore, and had to ration raw pasta and oatmeal. My protein source +(lentils) were inedible when raw. Things weren't looking great. + +Despite the gloom, I still was happier there than I was in that hotel room. +Some cheer returned to me when it began to snow. A cloudy day in the 30F-40F +range, with gray skies and slow falling snow, made for good pictures and +brought back my appreciation for my surroundings. Time passed slowly but +eventually I swung back from the depression. + +Eventually it was time for me to hike back to the parking area for my ride. He +showed up at about the right time and the car was fixed. I thanked them +fervently and drove away from Elko feeling simultaneously scarred and happy. + +My time in the Ruby Mountains was bittersweet. Beauty abounds here, and water +is plentiful. I would go back in a heartbeat. But I still felt damaged by my +emotions and the moments that I felt stuck there. I hope to return in better +circumstances. And I learned to be more careful when screwing my stoves onto +the fuel canisters...and to not punch holes in my gas tank. diff --git a/metadata.json b/metadata.json new file mode 100644 index 0000000..bb422a8 --- /dev/null +++ b/metadata.json @@ -0,0 +1,232 @@ +{ + "BasinRange": { + "title": "Basin & Range National Monument", + "state": "Nevada", + "cover": "99.jpg" + }, + "Berlin": { + "title": "Berlin Ichthyosaur State Park", + "state": "Nevada", + "cover": "135.jpg" + }, + "Bisti": { + "title": "Bisti Badlands", + "state": "New Mexico", + "cover": "19.jpg" + }, + "Canyonlands": { + "title": "Canyonlands National Park", + "state": "Utah", + "cover": "20240616141708.jpg" + }, + "CratersMoon": { + "title": "Craters of the Moon", + "state": "Idaho", + "cover": "20240701200914.jpg" + }, + "GoldButte": { + "title": "Gold Butte National Monument", + "state": "Nevada", + "cover": "20240320115524.jpg" + }, + "GreatBasinNP": { + "title": "Great Basin National Park", + "state": "Nevada", + "cover": "20240618111751.jpg" + }, + "LunarLake": { + "title": "Lunar Lake & Lunar Crater", + "state": "Nevada", + "cover": "20240619100121.jpg" + }, + "Misc": { + "title": "Misc. Uncategorized", + "state": "Many", + "cover": "45.jpg" + }, + "Quartzsite": { + "title": "Kofa Wildlife Refuge", + "state": "Arizona", + "cover": "20240318163253.jpg" + }, + "Sequoia": { + "title": "Sequoia National Park", + "state": "California", + "cover": "208.jpg" + }, + "Tahoe": { + "title": "Lake Tahoe", + "state": "Nevada", + "cover": "20240401121328.jpg" + }, + "WalkerLake": { + "title": "Walker Lake", + "state": "Nevada", + "cover": "203.jpg" + }, + "Bluewater": { + "title": "Bluewater Lake State Park", + "state": "New Mexico", + "cover": "IMG_9773.JPEG" + }, + "Cathedral": { + "title": "Cathedral Gorge State Park", + "state": "Nevada", + "cover": "IMG_1183.JPEG" + }, + "Clayton": { + "title": "Clayton Lake & Dinosaur Tracks", + "state": "New Mexico", + "cover": "IMG_0907.JPEG" + }, + "Caballo": { + "title": "Caballo", + "state": "New Mexico", + "cover": "IMG_0760.JPEG" + }, + "Peralta": { + "title": "Peralta Trail (Weaver's Needle)", + "state": "Arizona", + "cover": "IMG_6990.JPEG" + }, + "EchoCanyon": { + "title": "Echo Canyon State Park", + "state": "Nevada", + "cover": "IMG_1201.JPEG" + }, + "CityOfRocks": { + "title": "City of Rocks State Park", + "state": "New Mexico", + "cover": "IMG_9191.JPEG" + }, + "Diamonds": { + "title": "Diamond Range", + "state": "Nevada", + "cover": "IMG_0623.JPEG" + }, + "Rubies": { + "title": "Ruby Mountains", + "state": "Nevada", + "cover": "IMG_0667.JPEG" + }, + "ElMalpais": { + "title": "El Malpais National Monument", + "state": "New Mexico", + "cover": "IMG_9669.JPEG" + }, + "CibolaGrants": { + "title": "Cibola National Forest Near Grants", + "state": "New Mexico", + "cover": "IMG_9966.JPEG" + }, + "CibolaDatil": { + "title": "Cibola National Forest Near Datil", + "state": "New Mexico", + "cover": "IMG_9575.JPEG" + }, + "Datil": { + "title": "Datil", + "state": "New Mexico", + "cover": "IMG_6663.JPEG" + }, + "Flagstaff": { + "title": "Flagstaff", + "state": "Arizona", + "cover": "IMG_8048.JPEG" + }, + "VLA": { + "title": "Very Large Array", + "state": "New Mexico", + "cover": "IMG_6644.JPEG" + }, + "Phoenix": { + "title": "Phoenix", + "state": "Arizona", + "cover": "IMG_7879.JPEG" + }, + "SaltRiver": { + "title": "Salt River Canyon", + "state": "Arizona", + "cover": "IMG_6709.JPEG" + }, + "CoconinoFlagstaff": { + "title": "Coconino National Forest Near Flagstaff", + "state": "Arizona", + "cover": "IMG_8407.JPEG" + }, + "WatsonLake": { + "title": "Watson Lake", + "state": "Arizona", + "cover": "IMG_7580.JPEG" + }, + "PrescottNF": { + "title": "Prescott National Forest", + "state": "Arizona", + "cover": "IMG_7458.JPEG" + }, + "BoyceThompson": { + "title": "Boyce Thompson Arboretum", + "state": "Arizona", + "cover": "1606.JPEG" + }, + "ToApacheLake": { + "title": "To Apache Lake", + "state": "Arizona", + "cover": "IMG_1735.JPG" + }, + "SonoranSnow": { + "title": "Sonoran Desert Snow Day", + "state": "Arizona", + "cover": "IMG_8764.JPEG" + }, + "GoldwaterLakes": { + "title": "Goldwater Lakes", + "state": "Arizona", + "cover": "IMG_7200.JPEG" + }, + "Roswell": { + "title": "Roswell & The International UFO Museum", + "state": "New Mexico", + "cover": "IMG_5957.JPEG" + }, + "Mogollon": { + "title": "Mogollon, A Ghost Town", + "state": "New Mexico", + "cover": "IMG_5380.JPEG" + }, + "ChiNaturePark": { + "title": "Chihuahuan Desert Nature Park", + "state": "New Mexico", + "cover": "IMG_6236.JPEG" + }, + "Bumblebee": { + "title": "Bumblebee", + "state": "Arizona", + "cover": "IMG_8535.JPEG" + }, + "TontoNF": { + "title": "Tonto National Forest", + "state": "Arizona", + "cover": "IMG_1670.JPG" + }, + "Superior": { + "title": "Superior", + "state": "Arizona", + "cover": "IMG_6153.JPEG" + }, + "Gila": { + "title": "Gila National Forest", + "state": "New Mexico", + "cover": "IMG_5468.JPEG" + }, + "OakFlat": { + "title": "Oak Flat", + "state": "Arizona", + "cover": "IMG_6104.JPEG" + }, + "Pushawalla": { + "title": "Pushawalla Palms Trail", + "state": "California", + "cover": "IMG_1424.JPG" + } +} diff --git a/templates/main b/templates/main new file mode 100644 index 0000000..a76131a --- /dev/null +++ b/templates/main @@ -0,0 +1,52 @@ + + + + + + + nebula's photoblog + + + + +
+

+ i take pictures +

+
+
+
+

+

Work in progress!

+ This is going to be a photo blog. Right now its just a mess of undescribed photos. + A lot of photos have not been uploaded yet and work on CSS and choosing which images + are included here are underway. Come back later to see more pictures, descriptive + content and better CSS. +

+

A collection of {{ total_count }} photos in {{ album_count }} albums.

+
+ Table of Contents +
+ {% for placename, info in metadata.items() %} + + {% endfor %} +
+
+
+ +
+ + diff --git a/templates/place b/templates/place new file mode 100644 index 0000000..45c6b6b --- /dev/null +++ b/templates/place @@ -0,0 +1,143 @@ + + + + + + + {{ info['title'] }} + + + + +
+
+ + + + +
+ +
+
+ + + Home + + +
+ {{ info['title'] }} + {{ info['state'] }} +
+
+ + + +
+
+ {{ markdown }} +
+

{{ count }} photos

+
+ {% for width, height, photo in photos %} + + + + {% endfor %} +
+
+ + + +